我正在用F#编写一个md2html编译器,我想**用<b>和</b>标签替换周围的文本.
例如
this is **bold**将改为this is <b>bold</b>
我试图Regex.Replace使用模式的方法来实现这一点(\*\*).*?(\*\*).所以第一个捕获组将被替换,<b>第二个捕获组将被替换为</b>我想知道如何指定替换这些不同的"捕获组"而不是整个正则表达式匹配?
只需使用此正则表达式:\*\*(.*?)\*\*并将匹配项替换为<b>$1</b>
\*\*从字面上匹配**。(启动一个捕获组。.*只是匹配它能得到的不是新行的所有内容。?这使得.*懒惰,因此它不匹配其他粗体文本。)结束捕获组。\*\*从字面上匹配**。你应该捕捉你需要保留的东西。您只需匹配需要替换的内容即可。
使用\*\*(.*?)\*\*模式和<b>$1</b>替换。
如果您希望星号之间出现换行符,请使用单行修饰符(?s): (?s)\*\*(.*?)\*\*