Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.09.2012, 23:06
Профессор
Отправить личное сообщение для alerzo Посмотреть профиль Найти все сообщения от alerzo
 
Регистрация: 23.12.2010
Сообщений: 224

Сравнение строк
Добрый день!
помогите сравнить правильно два одинаковых текста, чтобы получать либо true либо false
у меня не получается, видимо из за того что это разбитый энтерами текст.
http://learn.javascript.ru/play/Xm8CFb
Ответить с цитированием
  #2 (permalink)  
Старый 04.09.2012, 00:57
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

<!DOCTYPE HTML>
<html>
  <head>
    <style>
      div {
      
        margin:40px;
        border:3px solid black;
      }
    
    </style>
  </head>
  <body>

    <div id='str1'>Земля́ — третья от Солнца планета Солнечной системы, крупнейшая по диаметру, массе и плотности среди планет земной группы.
Чаще всего упоминается как Мир, Голубая планета[4][5], иногда Терра (от лат. Terra). Единственное известное человеку на данный момент тело Солнечной системы в частности и Вселенной вообще, населённое живыми организмами.
Научные данные указывают на то, что Земля образовалась из солнечной туманности около 4,54 миллиардов лет назад,[6][7][8][9] и вскоре после этого приобрела свой единственный естественный спутник — Луну. Жизнь появилась на Земле около 3
      ,5 миллиардов лет назад. С тех пор биосфера Земли значительно изменила атмосферу и прочие абиотические факторы, обусловив количественный рост аэробных организмов, так же как и формирование озонового слоя, который вместе с магнитным полем Земли ослабляет вредную солнечную радиацию, тем самым сохраняя условия для жизни на Земле. Учитывая период полураспада радиоактивных элементов, радиация, обусловленная самой земной корой, снизилась ещё более значительно. Кора Земли разделена на несколько сегментов, или тектонических плит, которые постепенно мигрируют по поверхности за периоды во мно
      го миллионов лет. Приблизительно 70,8 % поверхности планеты занимает Мировой океан[10], остальную часть поверхности занимают континенты и острова. Жидкая вода, необходимая для всех известных жизненных форм, не существует на поверхности какой-либо из известных планет и планетоидов Солнечной системы, кроме Земли. Внутренние области Земли достаточно активны и состоят из толстого, очень вязкого слоя, называемого мантией, которая покрывает жидкое внешнее ядро (которое и является источником магнитного
      поля Земли) и внутреннее твёрдое ядро, предположительно, железное.</div>  
     <div id='str2'>Земля́ — третья от Солнца планета Солнечной системы, крупнейшая по диаметру, массе и плотности среди планет земной группы.
Чаще всего упоминается как Мир, Голубая планета[4][5], иногда Терра (от лат. Terra). Единственное известное человеку на данный момент тело
       Солнечной системы в частности и Вселенной вообще, населённое живыми организмами.
Научные данные указывают на то, что Земля образовалась из солнечной туманности около 4,54 миллиардов лет назад,[6][7][8][9] и вскоре после этого приобрела свой единственный естественный спутник — Луну. Жизнь появилась на 
       Земле около 3,5 миллиардов лет назад. С тех пор биосфера Земли значительно изменила атмосферу и прочие абиотические факторы, обусловив количественный рост аэробных организмов, так же как и формирование озонового слоя, который вместе с магнитным полем Земли ослабляет вредную солнечную радиацию, тем самым сохраняя условия для жизни на Земле. Учитывая период полураспада радиоактивных элементов, радиация, обусловленная самой земной корой, снизилась ещё более значительно. Кора Земли разделена на несколько сегментов, или тектонических плит, которые постепенно мигрируют по поверхности за периоды во много миллионов лет. Приблизительно 70,8 % поверхности планеты занимает Мировой океан[10], остальную часть поверхности занимают континенты и острова. Жидкая вода, необходимая для всех известных жизненных форм, не существует на поверхности какой-либо из известных планет и планетоидов Солнечной системы, кроме Земли. Внутренние области Земли достаточно активны и состоят из толстого, очень вязкого слоя, называемого мантией, которая покрывает жидкое внешнее ядро (которое и является источником магнитного поля Земли) и внутреннее твёрдое ядро, предположительно, железное.</div>  
     <div id='str3'>Земля́ — третья от Солнца планета Солнечной системы, крупнейшая по диаметру, массе и плотности среди планет земной группы.
Чаще всего упоминается как Мир, Голубая планета[4][5], иногда Терра (от лат. Terra). Единственное известное человеку на данный момент тело Солнечной системы в частности и Вселенной вообще, населённое живыми организмами.
Научные данные указывают на то, что Земля образовалась из солнечной туманности около 4,54 миллиардов лет назад,прочие абиотические факторы, обусловив количественный рост аэробных организмов, так же как и формирование озонового слоя, который вместе с магнитным полем Земли ослабляет вредную солнечную радиацию, тем самым сохраняя условия для жизни на Земле. Учитывая период полураспада радиоактивных элементов, радиация, обусловленная самой земной корой, снизилась ещё более значительно. Кора Земли разделена на несколько сегментов, или тектонических плит, которые постепенно мигрируют по поверхности за периоды во много миллионов лет. Приблизительно 70,8 % поверхности планеты занимает Мировой океан[10], остальную часть поверхности занимают континенты и острова. Жидкая вода, необходимая для всех известных жизненных форм, не существует на поверхности какой-либо из известных планет и планетоидов Солнечной системы, кроме Земли. Внутренние области Земли достаточно активны и состоят из толстого, очень вязкого слоя, называемого мантией, которая покрывает жидкое внешнее ядро (которое и является источником магнитного поля Земли) и внутреннее твёрдое ядро, предположительно, железное.</div>  
    
    
    <script>

      function _(selector) {
      
      return document.querySelectorAll(selector)[0];
      }

  var primary = _('#str1').innerHTML; 
      
   var str1 =  _('#str2').innerHTML;
      
   var str2 =  _('#str3').innerHTML;
      
      function getCompare (str1, str2) {
       str1 = str1.replace(/(\s|\n)/g,'');
        str2 = str2.replace(/(\s|\n)/g,'');
     
     return str1 === str2;
      }  
     
      alert(getCompare(primary, str1)); 
      alert(getCompare(primary, str2)); 
      

    </script>

  </body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 04.09.2012, 01:03
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Сообщение от Дзен-трансгуманист Посмотреть сообщение
alerzo,
Нельзя просто так разрывать строковой литерал на несколько строк.

Если переносы строк не принципиальны, делайте так:
var m = "DirectoryIndex index.php \
RewriteEngine On \
RewriteBase \
...
exploits";

Если все-таки они важны, то так:
var m = "DirectoryIndex index.php \n\
RewriteEngine On \n\
RewriteBase \n\
...
exploits";


В обоих случаях бэкслэш в конце всех строк кроме последней - обязателен.
а не проще убрать все пробелы и абзацы и сравнить?
как я сделал выше?
Ответить с цитированием
  #4 (permalink)  
Старый 04.09.2012, 08:53
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Ответить с цитированием
  #5 (permalink)  
Старый 04.09.2012, 16:05
Профессор
Отправить личное сообщение для alerzo Посмотреть профиль Найти все сообщения от alerzo
 
Регистрация: 23.12.2010
Сообщений: 224

не совсем понял как мне решить проблему касательно моего случая, т.е. как на языке js сравнить эти два текста
Ответить с цитированием
  #6 (permalink)  
Старый 04.09.2012, 17:28
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

честно нечего не понятно по той ссылке что вы дали.
сделайте 2 блока в одном 1 текст в другом второй тогда скажу
Ответить с цитированием
  #7 (permalink)  
Старый 04.09.2012, 19:36
Профессор
Отправить личное сообщение для alerzo Посмотреть профиль Найти все сообщения от alerzo
 
Регистрация: 23.12.2010
Сообщений: 224

там два одинаковых текста =) просто нужно их сравнивать, джава скрипт мне говорит пусто
Ответить с цитированием
  #8 (permalink)  
Старый 04.09.2012, 19:43
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

вынесите оба блока в хтмл , получите содержимое через innerHTML и сравните
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое удаление строк таблицы Tankist Events/DOM/Window 16 03.07.2013 16:42
Сравнение двух строк drac0Sha Общие вопросы Javascript 17 20.08.2012 19:45
Сравнение строк в javaskript Thezzz Общие вопросы Javascript 21 22.06.2011 22:42
сравнение строк в процентах doromones Общие вопросы Javascript 3 19.07.2010 19:48
Сравнение строк по алфавиту Alex VoDevil Общие вопросы Javascript 6 25.02.2010 02:04