正则表达式查找粗体

时间:2019-06-13 14:17:46

标签: javascript regex

我想获取****之间的文本。

这就是我要尝试的:

/\**(.*)\**/ig

这是示例字符串

** The ** *quick* ~~brown~~ fox ** jumped **

请忽略**之后和**之前的空格

结果,我正在获取整个字符串

1 个答案:

答案 0 :(得分:3)

由于星号是一个特殊字符,您的正则表达式不会因为编译问题而感到惊讶,这让我感到有些惊讶-它表示以前的值“零个或多个”。根据您的正则表达式,您正在捕获:

* zero or more of (nothing)
* zero or more of (nothing)
(.) any single character (in a capturing group)
* zero or more of (the previous item, 'any character')

我想您想要的是

/\*\*(.*?)\*\*/ig

那是

\* the asterisk character
\* another asterisk
(.*?) anything, non-greedy (up until whatever is next in the regex)
\* the asterisk character
\* another asterisk