我正在尝试使用帮助程序exe(C#)清理一些数据。
我遍历每个字符串,我想从字符串的开头和结尾删除无效字符,即从$$$helloworld$$$
中删除美元符号。
使用此正则表达式可以正常工作:\W
。
但是,中间包含无效字符的字符串应该保持不变,即hello$$$$world
很好,我的正则表达式不应与此特定字符串匹配。
所以从本质上讲,我试图弄清楚在字符串的开头和结尾匹配无效字符的语法,但是留下包含无效字符的字符串。
感谢您的帮助!
答案 0 :(得分:7)
就是这样!
(^[\W_]*)|([\W_]*$)
此regex
表示在结尾处开始(^
)或(|
)匹配零个或多个非单词字符($
)
答案 1 :(得分:0)
以下内容应该有效:
^\W+|\W+$
^
和$
分别是字符串开头和结尾的锚点。中间的|
是OR,因此这个正则表达式意味着“要么匹配字符串开头的一个或多个非单词字符,要么匹配字符串末尾的一个或多个非单词字符”
答案 2 :(得分:0)
使用^匹配字符串的开头,使用$匹配字符串的结尾。 C# Regex Cheat Sheet
答案 3 :(得分:0)
试试这个,
(^[^\w]*)|([^\w]*$)
答案 4 :(得分:0)
使用^来匹配'行首“和$匹配'行尾',即你的代码应该匹配并删除^ \ W *和\ W * $