php 如何在javascript regex中匹配精确字符串

fwzugrvs  于 2023-05-05  发布在  PHP
关注(0)|答案(1)|浏览(133)

我的JavaScript正则表达式是

/\[DEF\]([^\[\]]+)\[\/DEF\]/g

我的弦是

[DEF]sdgsdggsFfg sdgsdg[/DEF]

我想检查我的正则表达式,在中间的[/DEF]不来,我能做什么呢?
当我将这个正则表达式修改为/\[DEF\]([^\[\/DEF]]+)\[\/DEF\]/g,但在正则表达式中它匹配单个字符,例如D,E或F,我想用精确的[/DEF]匹配它
我能为它做些什么。

gojuced7

gojuced71#

这是一个简单的RegExp:

/\[DEF\]([\s\S]*?)\[\/DEF\]/g

使其不区分大小写(def instaead of DEF)

/\[DEF\]([\s\S]*?)\[\/DEF\]/gi

你也可以做一个简单的:

/\[DEF\](.*?)\[\/DEF\]/

但它只支持一次出现,并且不支持多行匹配。
当我看到你的特灵:/\[DEF\]([^\[\/DEF]]+)\[\/DEF\]/g看起来你不知道它是什么意思.*?

示例

var source = 'Exampe Source[DEF]my source[/DEF]'
document.write(source + '<br>')
alert('Source: ' + source)
var match = source.match(/\[DEF\]([\s\S]*?)\[\/DEF\]/g)
alert('Match:' + match)
document.write(match + '<br>')

相关问题