我使用以下正则表达式来选择括号括起来的任何字符串:
/\(([^()]+)\)/g
但是,我只想选择字符串中是否存在等号,例如:
(28%) - 未选中
(A = 28%) - 已选择
这可能吗?
答案 0 :(得分:2)
正如@Wiktor提到/\(([^()]*=[^()]*)\)/g
可以解决您的问题,
答案 1 :(得分:2)
可以通过 Look-Head 断言在编程语言中像\(.*(?==).*?\)
一样工作
(?=)
查找头部为=
,您可以在(?==)
签名后插入所需内容。它是正则表达式的一部分,而不是常规的等号。因此,您需要在代码中 $(document).on('opening', '#modal', function (e) {
$(document.body).append( $('#header_cart').detach() );
});
。就是这样。
答案 2 :(得分:2)
要添加到Wiktor的评论和RaR的答案,*
将匹配这些案例:(=28%)
,(A=)
您可能不需要。您可以使用+
确保=
两侧都有字符。
\([^(]+=[^)]+\)