删除特定字符,除非前面有某些特定字符串
remove specific character unless preceded by some specific string
我看了很多,但找不到我的案子的答案。所以我想 remove specific character
除非它前面有一些特定的字符串。例如,如果我有如下一段
var para = '<test@gmail.com>
>Lorem ipsum dolor sit amet,<test@gmail.com> consectetur
>adipiscing elit. Integer nec >
>odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla
>quis sem at nibh elementum imperdiet.Duis sagittis ipsum. Praesent
>mauris. Fusce nec tellus sed augue semper porta. Mauris massa.
>Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu.
<test@gmail.com> '
我想删除所有“>
”
除了 '.com
'
之后的那些
输出应该像
var para = '<test@gmail.com>
Lorem ipsum dolor sit amet,<test@gmail.com> consectetur
adipiscing elit. Integer nec
odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla
quis sem at nibh elementum imperdiet.Duis sagittis ipsum. Praesent
mauris. Fusce nec tellus sed augue semper porta. Mauris massa.
Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu.
<test@gmail.com> '
我知道如果我知道
para = para.replace(/\>/g,'');
这将替换所有“>
”,但我需要为其添加该条件。
[^m]>
应该做的工作。
请参阅 regex101
中的演示
解释:
[^m]>
说应该匹配每个 >
前面没有 m
字符。
要删除除“.com”之后的所有“>”,请使用 negative lookbehind
para = para.replace(/(?<!\.com)>/g,'');
我看了很多,但找不到我的案子的答案。所以我想 remove specific character
除非它前面有一些特定的字符串。例如,如果我有如下一段
var para = '<test@gmail.com>
>Lorem ipsum dolor sit amet,<test@gmail.com> consectetur
>adipiscing elit. Integer nec >
>odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla
>quis sem at nibh elementum imperdiet.Duis sagittis ipsum. Praesent
>mauris. Fusce nec tellus sed augue semper porta. Mauris massa.
>Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu.
<test@gmail.com> '
我想删除所有“>
”
除了 '.com
'
输出应该像
var para = '<test@gmail.com>
Lorem ipsum dolor sit amet,<test@gmail.com> consectetur
adipiscing elit. Integer nec
odio. Praesent libero. Sed cursus ante dapibus diam. Sed nisi. Nulla
quis sem at nibh elementum imperdiet.Duis sagittis ipsum. Praesent
mauris. Fusce nec tellus sed augue semper porta. Mauris massa.
Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu.
<test@gmail.com> '
我知道如果我知道
para = para.replace(/\>/g,'');
这将替换所有“>
”,但我需要为其添加该条件。
[^m]>
应该做的工作。
请参阅 regex101
中的演示解释:
[^m]>
说应该匹配每个 >
前面没有 m
字符。
要删除除“.com”之后的所有“>”,请使用 negative lookbehind
para = para.replace(/(?<!\.com)>/g,'');