首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带正则表达式的powershell搜索函数

带正则表达式的powershell搜索函数
EN

Stack Overflow用户
提问于 2015-02-02 09:06:34
回答 1查看 538关注 0票数 0

文本文件内容是:

在这个脚本中,我们有以下变量:

  1. $input_path来保存要解析的输入文件的路径。
  2. $output_file保存我们希望将结果存储在其中的文件的路径
  3. $regex保存字符串匹配时要使用的正则表达式模式。

select-string cmdlet包含以下各种参数:

  • -Path,它以输入文件的完整路径作为输入。
  • -Pattern,它以匹配过程中使用的正则表达式作为输入。
  • AllMatches搜索多个匹配项(如果没有此参数,它将在找到第一个匹配项后停止),并被管道传输到$.Matches,然后是$_.Value,后者使用所有匹配的当前值表示。

代码:

代码语言:javascript
复制
$replace_file=@{}
$replace_text_file_path="EMS_checksystem_script\replace.txt"
$replace_file= gc $replace_text_file_path
$result=0
$valr=read-host "please enter the key word"
for($i=0;$i -lt$file_context.length;$i++)
{
    $result=$replace_file[$i] -match $valr

    if( $result -eq 1)
    {
    $replace_file[$i] 

    }
}

结果:

关键词:*pression

操作符‘-match’的错误参数:解析"*pression“-量词{x,y},后面没有.行:11字符:37+ $result=$replace_file$i -match <<<< '*pression‘+ CategoryInfo : InvalidOperation:(:) [],RuntimeException + FullyQualifiedErrorId : BadOperatorArgument

关键词:pression*

关键词:press*on

无结果

如何使用press*on*pression关键字进行搜索?

EN

回答 1

Stack Overflow用户

发布于 2015-02-02 14:39:07

读一读regex。您可以在这里测试regex > http://www.regexr.com/

您的关键字是错误的,使用“。若要匹配任何字符,则"*“可匹配前一个字符的任意数目。

代码语言:javascript
复制
PS C:\>'expression' -match ".*pression"
PS C:\>True
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28274175

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档