Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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# URL的正则表达式帮助_C#_Regex_Url Rewriting - Fatal编程技术网

C# URL的正则表达式帮助

C# URL的正则表达式帮助,c#,regex,url-rewriting,C#,Regex,Url Rewriting,我有这样一个URL: http://www.domain.com/sponsor/xxxxx/reo/news 它最终需要重写为: http://www.domain.com/reo/news?brokerId=xxxxx 我对正则表达式很在行。如何从源URL推断“xxxxxx”并将字符串转换为最终结果 我真的不需要太多的帮助来创建最终结果,这很简单,但是如果有一种很好的、干净的方法来使用RegEx而不是原始字符串操作,那就很好了。使用“http://([^/]+)/shandor/([^/

我有这样一个URL:

http://www.domain.com/sponsor/xxxxx/reo/news
它最终需要重写为:

http://www.domain.com/reo/news?brokerId=xxxxx
我对正则表达式很在行。如何从源URL推断“xxxxxx”并将字符串转换为最终结果

我真的不需要太多的帮助来创建最终结果,这很简单,但是如果有一种很好的、干净的方法来使用RegEx而不是原始字符串操作,那就很好了。

使用
“http://([^/]+)/shandor/([^/]+)/reo/news”作为您的regexp

使用和
“http://$1/reo/news?brokerId=$2”
作为替换字符串


我尝试了你的例子,它产生了期望的输出。

在正则表达式中,结果很糟糕。。。直到我花时间学习它们如何工作并练习使用它们。奇怪吧?是的,正则表达式和我想提高的数百万其他技能都在名单上,花时间和我的妻子、女儿、我的其他爱好以及我的第二份工作在一起。:)当我告诉我妻子正则表达式更重要时,我相信她会理解的您是否考虑过使用URI类而不是正则表达式@史考特-这是一个例子。每周花15-30分钟写几个正则表达式,你很快就会成为专家。我认为你的妻子和女儿没有那么苛刻,是吗?:)见鬼,我在工作中完成项目时学会了正则表达式。谢谢你的链接,我会查出来的。:)我没有得到“http://$1/reo/news?brokerId=$2”部分,这个美元,有人能提供Java代码示例吗?他正在使用占位符$1和$2的替换($1=domain,$2=xxxxx)。这个替换表达式是用C编写的。啊,Java中有这样的占位符功能吗?@Adam是的,在Java中使用
\1
\2
,等等(与使用反向引用的方式相同)。