正则:"\\.(?<extension>\\w+)"是什么意思? 一个命名为extension的字符串。matchResult.Result("${extension}"),返回匹配组extension的值 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、那为何前面用符号 <> ,而后面用符号 ${} 呢?2、书上说 [a-zA-Z0-9]+\\. 是任意字母或数字后面紧跟符号. ,那么为何用两个符号\\呢?3、把(?<extension>\\w+)")括起来是什么意思啊?为何这里也用两个符号\\ 啊? (?<extension>\\w+)这个意思就是把(\\w+)匹配的值取个名字,你把<extension>换成<你喜欢的名字>都行啊,这里是扩展名。当然你也可以不取名字[a-zA-Z0-9]+\\.(\\w+),你取值得方式就不一样了。 \\代表"\"字符,因为"\"是转义字符,例如\s代表所有的空白字符、\[代表"["、\d代表数字,所以,"\"就必须用\\来表示。这里错了,实际上\\是C#里面字符串的转移字符,一个\\代表正则里面的一个\,而实际上\\\\才代表正则里面的\\即匹配"\"字符。 那么请问:\\和\不都是C#里面的东西吗?为何有的\\代表\,而这里的\\\\才代表一个\呢?另外,什么是字符串的转移字符啊?谢谢!按照书上说的:("[a-zA-Z0-9]+\\.(?<extension>\\w+)"),其实,aaa.exe是符合这个正则要求的,那这里为何用两个\\呢? 转义字符,这个你应该明白的啊。就是\,在正则表达式中\w匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]',而要使字符串中的\作为转义字符用先对其自己转一下。上面的的正则表达式实际上就是"[a-zA-Z0-9]+\.(\w+)",当然匹配aaa.exe的了 是这样的,正则表达式和C#都用"\"来做转义字符,所以,在C#里面'\\'是一个字符,就是'\',所以"[a-zA-Z0-9]+\\.(?<extension>\\w+)"实际上是[a-zA-Z0-9]+\.(\w+),而"\\\\"对应的正则表达式为\\,\\在正则中表示匹配"\"字符。。\\\\实在是太复杂了,如果我们想要匹配路径不就得"\\\\\w+\\\\"了吗?这样太吓人了,所以一般都会用前置"@"来命令C#不将"\"视为转义字符。这样,这个正则就可以这样写:@"[a-zA-Z0-9]+\.(\w+)" winform 使用反射动态创建窗体 b/s模式如何打开本地应用程序 在线求解答 新手关于jq里面的ajax调用后台的问题 求一html正则表达式 如何让C#程序运行快点 WinForm关于在树上递归的问题 怎么使得继承自CollectionBase的Items在设计时的内容持久? 为何win2003 下不能安装wince 5.0 模拟器 有关消息队列 请教大家一个关于打印的问题 [作调查了] 你心目中,那些软件还有些缺陷?或者您需要什么样的软件?100分作调查了!!!!! datagrid中的触发事件
<你喜欢的名字>都行啊,这里是扩展名。
当然你也可以不取名字[a-zA-Z0-9]+\\.(\\w+),你取值得方式就不一样了。
\\和\不都是C#里面的东西吗?为何有的\\代表\,而这里的\\\\才代表一个\呢?
另外,什么是字符串的转移字符啊?谢谢!
按照书上说的:("[a-zA-Z0-9]+\\.(?<extension>\\w+)"),其实,aaa.exe是符合这个正则要求的,那这里为何用两个\\呢?
上面的的正则表达式实际上就是"[a-zA-Z0-9]+\.(\w+)",当然匹配aaa.exe的了
\\\\实在是太复杂了,如果我们想要匹配路径不就得"\\\\\w+\\\\"了吗?这样太吓人了,所以一般都会用前置"@"来命令C#不将"\"视为转义字符。这样,这个正则就可以这样写:@"[a-zA-Z0-9]+\.(\w+)"