需要摆脱带有正则表达式的字符串中的“组织”,问题是组织后面是不同的文本,例如它可能是
Hosted/Organizationminor/
or
Hosted/Organizationmajor/
两者的结果应该是
Hosted//
答案 0 :(得分:1)
以下将查找"组织"的实例。其次是任何数量的非" /"字符,只要"组织"之前是" /"并且整个事情后跟" /"。我使用零宽度后视和前瞻断言,以便您可以将其作为正则表达式放入并用空字符串替换它。
(?=/)Organization[^/]*(?=</)
答案 1 :(得分:1)
LINQ有一个非正则表达式解决方案。
由于任务是在"Organization"
之后移除已知字符串/
,然后删除除/
之外的任何字符,您可以使用/
拆分字符串并重新生成使用LINQ的字符串只选择必要的部分:
string.Join("/", s.Split('/')
.Select(m => m.StartsWith("Organization") ? "" : m) // Empty the parts starting with the known word
);
请参阅IDEONE demo