C#如何删除BBCode之间的文本
本文关键字:BBCode 之间 文本 删除 何删除 | 更新日期: 2023-09-27 18:01:00
如何删除BBCode报价(包括BBCode本身(之间的所有文本:
[quote date=2011-07-02 14:43:53 user=test link=1]blabla[/quote]
我必须补充一点,标记之间可以是带有HTML标记的文本进行格式化。我当前的尝试看起来像:
Regex regex = new Regex(@"[quote+].+?[/'+quote]");
好吧,它几乎起作用了。
您可以尝试以下正则表达式:
@"'[quote.*'].*?'[/quote']"
请注意,正则表达式中必须转义方括号。
由于BBCode块包含属性,一个简单的+不足以覆盖所有内容。+表示重复指定的字符范围,在本例中为e。
在我的脑海中,我会尝试这样的东西:
'[quote([^'[]*)'](.*?)'['/quote']
请记住,我还没有在C#中测试过这一点,根据解释器的不同,C#的语法可能会有所不同。还要注意,我添加了选择组,这样您就可以检查每个表达式的结果。正如@Howard所回答的,[和]是保留符号,因此需要转义。