我目前正在尝试做一个正则表达式来删除所有这些字符0-9 \-* \‘,如果它们位于字符串的开头、字符串的末尾或者是字符串中的连续字符。
我现在有这个regex /^ at +(?:‘-+)$/gm,但是它只告诉我,它是否匹配字符串开头、字符串结尾或连续字符中缺少的特定字符,但我不确定应该如何删除不匹配的字符,因为它包含多个regex类(我不认为只能使用^并使其工作)。
我在这里做了单元测试,https://regex101.com/r/wNxttF/2
发布于 2019-07-24 13:04:09
你可以用
^[^a-zA-Z]+|[^a-zA-Z]+$|(['* -])['* -]+|[^a-zA-Z'* -]用组1值的反向引用$1替换
s.replace(/^[^a-zA-Z]+|[^a-zA-Z]+$|(['* -])['* -]+|[^a-zA-Z'* -]/g, '$1')详细信息
^[^a-zA-Z]+ -字符串开头处的一个或多个字符,而不是ASCII字符。| -或[^a-zA-Z]+$ -字符串末尾的一个或多个字符,而不是ASCII字符。| -或(['* -])['* -]+ -一个',*,-或-被捕获到第1组,然后1+或更多这样的字符| -或[^a-zA-Z'* -] -非ASCII字母、'、*、空格或-以外的字符。https://stackoverflow.com/questions/57183355
复制相似问题