是否可以在Regex中定义“任何序列中的字符”?

时间:2015-03-11 23:54:31

标签: regex

我希望匹配以1-3个星号开头的字符串,然后是两个波浪号(〜)或相反的顺序。所以

~~**word**~~

会匹配

就像

一样
*~~word~~*

我将如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以使用以下方式执行此操作:

\*{1,3}~{2}|~{2}\*{1,3}

但是如果你想为这些场景捕获字符串word,那么你可以这样做:

\*{1,3}~{2}(\w+)~{2}\*{1,3}|~{2}\*{1,3}(\w+)\*{1,3}~{2}

<强> Working demo

enter image description here

匹配信息:

MATCH 1
2.  [4-8]   `word`
MATCH 2
1.  [17-21] `word`