正则表达式替换除匹配项之外的所有内容
Regex replace everything except match
我只想保留以“@”开头并以字母或点继续的单词。基本上我做了相反的事情,我可以匹配这样一个词,但不知道如何匹配除了这个匹配之外的所有内容。所以基本上只保留以“@”开头的那些。到目前为止,我有这样的模式:
(@[a-zA-Z0-9.]+\b)
我试过使用'?!'但它不起作用。谢谢!
根据评论,下面的正则表达式是可以的
(?:^|\s)[^@]*
恰恰相反
(?:^|[^@A-Za-z0-9.]|@(?![A-Za-z0-9.]+\b))[^@]*
试试这个正则表达式:
(@+[a-zA-Z0-9.]+[a-zA-Z0-9]+)
我在线测试了它,它可以满足您的需求(匹配以@开头的每个单词,它可以以点继续,es:@hello.sir match | @hello.sir .do 匹配等等.. )
我只想保留以“@”开头并以字母或点继续的单词。基本上我做了相反的事情,我可以匹配这样一个词,但不知道如何匹配除了这个匹配之外的所有内容。所以基本上只保留以“@”开头的那些。到目前为止,我有这样的模式:
(@[a-zA-Z0-9.]+\b)
我试过使用'?!'但它不起作用。谢谢!
根据评论,下面的正则表达式是可以的
(?:^|\s)[^@]*
恰恰相反
(?:^|[^@A-Za-z0-9.]|@(?![A-Za-z0-9.]+\b))[^@]*
试试这个正则表达式:
(@+[a-zA-Z0-9.]+[a-zA-Z0-9]+)
我在线测试了它,它可以满足您的需求(匹配以@开头的每个单词,它可以以点继续,es:@hello.sir match | @hello.sir .do 匹配等等.. )