petshop对字符串处理对问题
32zyc 2006-07-20 10:48:29 petshop对用户输入对字符串进行了一些处理,有以下语句:
text = Regex.Replace(text, "[\\s]{2,}", " "); //two or more spaces
text = Regex.Replace(text, "(<[b|B][r|R]/*>)+|(<[p|P](.|\\n)*?>)", "\n"); //<br>
第一句将多个空白符变成一个空格
我的疑问在第二句,首先它匹配了<br>,但同时也匹配了<br/><br//>等等,它为什么不写成"(<[b|B][r|R]/?>呢?这样只匹配<br><br/>
还有它匹配了所有以p开头的标签,为什么要这样?只要匹配掉<p><p/>应该就够了,这样不会误判断吗?