0

我怎样才能提取这样的句子的一部分:

var sentence = "This is my sentence. I want to extract a part of it (in javascript !)";
var subSentence1 = "nt t";
var subSentence2 = "t (in javasc";

var result1 = f(sentence,subSentence1);
var result2 = f(sentence,subSentence2);

我想要:

结果1 =“想要”

result2 =“它(在javascript中”

谢谢

4

2 回答 2

0

你必须逃避你的subSentence变量,所以(应该是\(哪个手段t (in javasc应该是t \(in javasc

对正则表达式中使用的所有字符串变量使用字符串替换。

var subSentence1 = subSentence1.substring('(', '\(');

将给出所需结果的正则表达式是这些。

var patt = new RegExp("[^\s]*nt t.*?(?=\s)")
var patt = new RegExp("[^\s]*t \(in javasc.*?(?=\s)")

所以你把你的 subSentence 变量放在[^\s]*和之间.*?(?=\s)

构造一个正则表达式字符串,如

var patt = new RegExp("[^\s]*" + subSentence + ".*?(?=\s)")
于 2012-12-09T12:40:15.087 回答
0

如果您不熟悉正则表达式,我建议您看看这个必备参考。在我没有使用正则表达式并且忘记了语法之后,我个人总是会参考它。

于 2012-12-09T13:15:18.853 回答