更新以澄清问题
我尝试使用RegEx在单个反引号中查找文本(即Markdown格式的内联代码)。我这样做是为了在Xojo中实现基于RegEx的Markdown解析器。我尝试了一些模式,但它们似乎都返回了代码栏中的所有(或部分)文本内容(三重反引号)。
鉴于此Markdown
This is `inline code` (obviously).
Here is a code fence:
```
Some code
blah blah
```
Another `example for you`.
another fence:
```json
{"title":"Hello World!"}
```
我想找到以下匹配项:
`inline code`
`example for you`
使用此RegEx模式:`(.*?)`
正确匹配内联代码,但也匹配每个代码栏的前两个反引号。
有人可以帮我弄清楚如何只匹配单个反引号之间的内容,但是从两个反引号之间的匹配空白区域中排除?
答案 0 :(得分:2)
我认为你可以使用这样的正则表达式:
/`([^`\n\r]+)`/g
通过提供群组\1
如果您的RegEx支持正面观察,您可以使用:
/(?<=`)[^`\r\n]+(?=`)/g
答案 1 :(得分:2)
行。经过大量的努力,这似乎有效:
\`([^\`].*?)\`
希望它有所帮助。