0

我想找到 a.并在找到 a 后使用正则表达式获取任何字符(。我如何做到这一点?

我还想看到一些关于 Javascript 正则表达式的好教程。

4

2 回答 2

1

看来您在escaping的概念上遇到了麻烦。和字符在正则表达式中具有特殊含义,因此您需要通过在它们前面放置一个来转义.它们。例如,要匹配文字点,您可以使用(\\.

对于重复,您可以分别使用*or+表示 0+ 和 1+。这些用作前面表达式的修饰符。因此,例如,A+表示“一个或多个A字符”,而A*表示“零个或多个A字符”。您也可以使用?修饰符来改变这些匹配的“贪婪”行为,但这是一个更复杂的话题。

如果您需要限制确切的重复次数,可以使用{n}语法。例如,您可以使用A{10}精确匹配 10 个A字符,或A{3,5}匹配 3 到 5 个A字符。

这些也适用于组和类,例如[A-Z]{3}or (a*b+){3}

就 RegEx 教程而言,几乎没有任何地方比Regular-Expressions.info更好,尽管关于 RegEx 的 MDN 文章在JavaScript 方面也可能有用。

于 2013-04-23T15:06:00.797 回答
1

Following regex should work for you:

[.]([^(]*)[(]

Text you want to capture will be available in group # 1.

Javascript Code:

var str='here is a sentance. and some other text ( here )';
var match = str.match(/[.]([^(]*)[(]/);
console.log(match[1]); //  and some other text 

Live Demo: http://www.rubular.com/r/ALqusiC9EQ

于 2013-04-23T15:17:33.907 回答