res*_*101 29 regex string powershell text
如何从字符串中提取"程序名称".字符串将如下所示:
%O0033(SUB RAD MSD 50R III)G91G1X-6.4Z-2.F500 G3I6.4Z-8.G3I6.4 G3R3.2X6.4F500 G91G0Z5.G91G1X-10.4 G3I10.4 G3R5.2X10.4 G90G0Z2.M99%
程序名称为(SUB RAD MSD 50R III).将结果存储在另一个字符串中很好.我正在学习powershell,所以任何解释你的答案将不胜感激.
Sha*_*evy 48
以下正则表达式在括号之间提取任何内容:
PS> $prog = [regex]::match($s,'\(([^\)]+)\)').Groups[1].Value
PS> $prog
SUB RAD MSD 50R III
Explanation (created with RegexBuddy)
Match the character '(' literally «\(»
Match the regular expression below and capture its match into backreference number 1 «([^\)]+)»
Match any character that is NOT a ) character «[^\)]+»
Between one and unlimited times, as many times as possible, giving back as needed (greedy) «+»
Match the character ')' literally «\)»
Run Code Online (Sandbox Code Playgroud)
检查以下链接:
http://www.regular-expressions.info
只是添加一个非正则表达式解决方案:
'(' + $myString.Split('()')[1] + ')'
Run Code Online (Sandbox Code Playgroud)
这会将字符串拆分为括号,并从数组中获取程序名称中的字符串.
如果您不需要括号,只需使用:
$myString.Split('()')[1]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
87381 次 |
| 最近记录: |