从匹配的正则表达式JavaScript中选择字符
我想从匹配的文本中选择字符,但不确定如何进行查找选择 例如,我只想从“苹果”中选择“a”,而不是从“菠萝”中选择“a”,我使用了下面的正则表达式:从匹配的正则表达式JavaScript中选择字符,javascript,regex,Javascript,Regex,我想从匹配的文本中选择字符,但不确定如何进行查找选择 例如,我只想从“苹果”中选择“a”,而不是从“菠萝”中选择“a”,我使用了下面的正则表达式: /\ba(?=pple)/gi 我只想从“apple”中选择“e”,但不确定如何编写正则表达式。下面的正则表达式将返回整个单词“apple”,而不是仅返回“e” 如何选择“e”或任何其他字符,如“l” var text=“苹果菠萝飞机”; var lookahead=/\ba(?=pple)/gi; 警报(text.match(lookahead
/\ba(?=pple)/gi
我只想从“apple”中选择“e”,但不确定如何编写正则表达式。下面的正则表达式将返回整个单词“apple”,而不是仅返回“e”
如何选择“e”或任何其他字符,如“l”
var text=“苹果菠萝飞机”;
var lookahead=/\ba(?=pple)/gi;
警报(text.match(lookahead));
var lookback=/\b(appl)e/gi;
警报(text.match(lookback))代码>您可以轻松地使用,但不幸的是,javascript不支持它。您可以改为使用组捕获,仅检索您安装的部分,例如,要仅捕获“apple”中的“e”,您可以编写如下内容:
var matched = /\bappl(e)/.exec('apple');
var capturedChar = null;
if (matched) {
// [0] contains the whole matched string, "apple", and [1] contains "e"
capturedChar = matched[1];
}
你的第一个例子很有效,不是吗?只有a
被提醒。这样如何,/\b(a)pple/
同样地:/\bappl(e)/
如果你想知道匹配组的目的是什么()
像你这样选择字符会让我不知道你到底在干什么。@chris85,我试图不使用匹配的[2]
,因为我需要一个长的正则表达式,这只是它的一部分,实际上我需要一个包含多个条件的很长的正则表达式,这只是它的一部分。所以我尽量不使用matched[1]
。好吧,如果你能提供更完整的解释和例子,我们将能够更好地帮助你。
var matched = /\bappl(e)/.exec('apple');
var capturedChar = null;
if (matched) {
// [0] contains the whole matched string, "apple", and [1] contains "e"
capturedChar = matched[1];
}