在我的项目代码中,我看到下面的正则表达式用于消除字符串中的锚标记及其属性。
我不熟悉正则表达式。感谢你的帮助。
String str2 = sql.replaceAll(“] *>”,“”);
答案 0 :(得分:2)
要了解正则表达式模式,您可以使用regex online-tester tool。该工具准确地显示了正则表达式模式的作用,您还可以检查字符串是否与正则表达式匹配。
要测试正则表达式,您必须在\
之前添加/?
以逃避/
:
<\/?a[^>]*>
这里的解释是:
<
匹配字符&lt;字面意思
\/?
字面匹配字符/
- 量词:
?
在zero
和one
之间,次数为[greedy]
可能,根据需要回馈a
a
字面匹配字符[^>]*
(区分大小写)
Quantifier:
匹配下面列表中不存在的单个字符
*
zero
在unlimited
和[greedy]
次之间, 尽可能多次,根据需要回馈>
>
列表中的单个字符&gt;字面意思(区分大小写){{1}}匹配字符&gt;字面上
答案 1 :(得分:2)
逐步采用表达式</?a[^>]*>
:
<
:字符<
/?
:optionnaly后跟字符/
a
:字符a
[^>]*
:0个或多个不是>
的字符。例如href="..."
>
:字符>
实际上,这意味着:&#34;将<a ***>
或</a ***>
替换为""
=无。
示例:
<a href="www.google.com" target="_blank">This is a link.</a>
成为:
This is a link.
答案 2 :(得分:1)
我建议使用regex101来expalin并测试正则表达式。 对于这个特殊的,我进入了
<\/?a[^>]*> (note i escaped the / with a \)
和文字
hello <a href="blah" > world</a> here
它给出了
权利的解释&lt; /?a [^&gt;] &gt; /&lt;匹配字符&lt;字面上/?匹配 字符/字面量词:?在零和一次之间,尽可能多 尽可能多的时间,根据需要回馈[贪婪]匹配 字面字面(区分大小写)[^&gt;] 匹配单个字符 在Quantifier下面的列表中没有出现:*在零和无限之间 时间,尽可能多次,根据需要回馈[贪心] &GT;列表中的单个字符&gt;字面意思(区分大小写) &GT;匹配字符&gt;字面上
它还会突出显示它在字符串中的影响。