2014-01-15 4 views
-1

, так что это моя проблема: У меня есть 2 строки «myTestTomorrow» и «ThisIsmyTesttoday». Мне нужно получить часть, содержащую обе строки, в данном случае «myTest». Как я могу это сделать?Сопоставьте часть строки с частью другой строки

+0

http://www.w3schools.com/jsref/jsref_indexof.asp Это вопрос для Google, а не для StackOverflow. –

+3

Почему у этого получилось 2 upvotes? Это ужасный вопрос. OP: включить то, что вы уже сделали. –

+0

Знаете ли вы строку, которую вы пытаетесь найти, или пытаетесь найти ту же часть обеих строк? Если вы уже знаете строку, пишущую RegEx, это тривиально, если вы не можете это сделать с помощью RegEx. –

ответ

0

Вы можете сделать это с помощью двух петель для и indexOf, как этот

var text1 = "myTestTomorrow", text2 = "ThisIsmyTesttoday"; 
outer: for (var i = text1.length; i >= 0; i -= 1) { 
    for (var j = 0; j + i < text1.length; j += 1) { 
     if (text2.indexOf(text1.substr(j, i)) !== -1) { 
      console.log("Result is '" + text1.substr(j, i) + "'"); 
      break outer; 
     } 
    } 
} 

Выход

Result is 'myTest' 
+0

Это то, что я искал. Благодаря! – user3197979

+0

@ user3197979 Добро пожаловать :) Помните, что для одного и того же алгоритма могут быть эффективные реализации. – thefourtheye

Смежные вопросы