用于删除字符串末尾 HTML 换行符的正则表达式

Regular expression to remove HTML line breaks at end of string

我正在尝试从字符串中删除所有尾随 HTML 换行符,例如<br><br/> 等等

所以这个:

<br /> remove HTML breaks after this string    <br/><br><br /><br/><br><br /><br  /><br/>

必须变成这样:

<br /> remove HTML breaks after this string

我在这里查看:

我目前所拥有的([<br\/>|<br>|<br \/>])?,但匹配所有换行符,包括空格

现场测试:https://regex101.com/r/XuWYqx/1

您可以使用此正则表达式匹配所有尾随 br 标签:

\s*(?:<br\s*\/?>)+\s*$

将其替换为空字符串。

Updated RegEx Demo

正则表达式详细信息:

  • \s*:匹配0个或多个空格
  • (?:<br\s*\/?>)+:匹配 <br 后跟 0 个或多个空格,然后是可选的 / 并结束 >。重复此比赛 1 次或多次
  • \s*:匹配0个或多个空格
  • $: 行尾

这应该有效:

/(<br \/> [\d\D]+)\s+<br/gmU

它把所有内容都放在第一个组中的第一个