maz*_*ztt 2 .net c# linq string
我可以拥有这些可能的slug弦
my-post
my-post-2
my-post-2-3
my-post-2-3-4-5-6-7-8-9
this-is-my-post
this-is-my-post-2
this-is-my-post-2-3
this-is-my-post-2-3-4-5-6-7
abc-abc-abc1
abc-abc-abc1-2
abc-abc-abc1-2-3-4-5-6
Run Code Online (Sandbox Code Playgroud)
它们可以是最后有数字或没有数字的任何东西.
我想做的例如:
this-is-my-post-2-3
Run Code Online (Sandbox Code Playgroud)
然后用-2-3最后的替换=2=3.所以它变成:
this-is-my-post=2=3
Run Code Online (Sandbox Code Playgroud)
那么有没有一种干净的方式我可以在linq或通过一些字符串解析或其他东西?
您可以使用正则表达式找出字符串的结尾,然后正常替换字符:
Regex.Replace(slug, @"[\d-]+$", m => m.Value.Replace('-', '='));
Run Code Online (Sandbox Code Playgroud)
快速PowerShell测试:
PS> $strings | %{ [Regex]::Replace($_, '[\d-]+$', {$args[0].value.replace('-','=')}) }
my-post
my-post=2
my-post=2=3
my-post=2=3=4=5=6=7=8=9
this-is-my-post
this-is-my-post=2
this-is-my-post=2=3
this-is-my-post=2=3=4=5=6=7
abc-abc-abc
abc-abc-abc=2
abc-abc-abc=2=3=4=5=6
this-is-my-2nd-post
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
818 次 |
| 最近记录: |