Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用于提取标点/字符的正则表达式_C#_Regex - Fatal编程技术网

C# 用于提取标点/字符的正则表达式

C# 用于提取标点/字符的正则表达式,c#,regex,C#,Regex,大家好,我需要一个只提取标点/字符的正则表达式 到目前为止,我有: [._^%$#!~@,-]+ 但是,如果至少有1个标点符号,并且仍然允许使用任何其他字符数字或字母,则此方法有效 我只需要允许标点/字符尝试以下操作: ^[\p{S}\p{P}]+$ \p{S}匹配任何符号字符,\p{p}匹配任何标点符号 请注意,您的模式不会匹配列表中不存在的所有符号和标点符号。尝试将正则表达式锚定到字符串的开头和结尾,除非您使用多行匹配-即开头为“^”,结尾为$: ^[.^%$!~@,-]+$ 注意-这并

大家好,我需要一个只提取标点/字符的正则表达式

到目前为止,我有:

[._^%$#!~@,-]+
但是,如果至少有1个标点符号,并且仍然允许使用任何其他字符数字或字母,则此方法有效

我只需要允许标点/字符

尝试以下操作:

^[\p{S}\p{P}]+$
\p{S}匹配任何符号字符,\p{p}匹配任何标点符号


请注意,您的模式不会匹配列表中不存在的所有符号和标点符号。

尝试将正则表达式锚定到字符串的开头和结尾,除非您使用多行匹配-即开头为“^”,结尾为$:

^[.^%$!~@,-]+$


注意-这并不支持您的实际模式我不能说这是否匹配您所说的所有“特殊字符”,但它会使整个字符串都是“特殊的”。

[^a-zA-Z0-9]*您可以尝试类似的方法。如果不接受这些字符,cba将在一个u型旁边的字符旁写入所有字符

\W

匹配不是单词字符的任何字符-字母数字和下划线。

。必须转义:\。否则,上述模式与任何内容都匹配。@SinaIravanian。当它在字符类中时,不需要转义。请注意,字符类中使用的点,因此根本不需要转义。@AndrasZoltan:-.!@$%^&*.+=`~?':;[]{}| \那么我可以使用任何正则表达式来表示这些字符吗?对于unicode完全错误,对于ASCII几乎错误。例如,它允许空白字符、控制字符等。如前所述,cba可以编写他不使用的所有内容