【发布时间】:2017-04-25 12:25:04
【问题描述】:
我有一个需求,我需要遍历字符串并获得特定模式的第一次出现,如下所示,
i am a new **point**
如果出现两个连续的字符,它必须返回 true。
I must *not* be returned or*
上面的模式必须返回false。我试图在几个链接之后创建正则表达式,但是string.match方法总是返回null。 我的代码,
var getFormat = function(event) {
var element = document.getElementById('editor');
var startIndex = element.selectionStart;
var selectedText = element.value.slice(startIndex);
var regex = new RegExp(/(\b(?:([*])(?!\2{2}))+\b)/)
var stringMatch = selectedText.match(regex);
console.log('stringMatch', stringMatch);
}
<html>
<body>
<textarea onclick='getFormat(event);' rows='10' cols='10' id='editor'></textarea>
</body>
</html>
由于我是 regex 的新手,我无法弄清楚我错在哪里。有人可以帮我解决这个问题吗?
【问题讨论】:
标签: javascript regex