首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Powershell中格式错误的\p{X}字符转义

Powershell中格式错误的\p{X}字符转义
EN

Stack Overflow用户
提问于 2021-03-24 11:47:12
回答 1查看 625关注 0票数 1

我在PS脚本中有一个使用-match的比较语句

代码语言:javascript
运行
AI代码解释
复制
$propValue = (Get-ItemProperty "Registry::$($c.Name)" -Name "$($p)")."$($p)"
$productName =  "C:\Program Files (x86)\MyApplication\MyApp"
if ($propValue -match $productName) 
{
      // Do something
}

执行时,脚本在Powershell中抛出错误\p{X}字符转义错误。这是怎么回事?我该如何解决这个问题?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-24 12:07:45

-match是正则表达式运算符,而\p{X}是用于描述Unicode块的正则表达式转义序列。

这里发生的情况很可能是一个字符串值,如

代码语言:javascript
运行
AI代码解释
复制
sometext\p{b8ee6b4b-fefe-4f77-916f-cb8df996599d}

因此,正则表达式引擎将识别p{...}序列,并在确定b8ee6b4b-fefe-4f77-916f-cb8df996599d不是有效的unicode块描述符后抛出错误。

在将$productName用作正则表达式模式之前,对它的值进行转义,它将按照您的预期工作:

代码语言:javascript
运行
AI代码解释
复制
if ($propValue -match [regex]::Escape($productName)) 
{
      // Do something
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66780396

复制
相关文章
python格式化字符及转义字符
 Python格式化字符串的替代符以及含义 符   号 说     明 %c 格式化字符及其ASCII码 %s 格式化字符串 %d 格式化整数 %u 格式化无符号整型 %o 格式化无符号八进制数 %x 格式化无符号十六进制数 %X 格式化无符号十六进制数(大写) %f 格式化浮点数字,可指定小数点后的精度 %e 用科学计数法格式化浮点数 %E 作用同%e,用科学计数法格式化浮点数 %g 根据值的大小决定使用%f活%e %G 作用同%g,根据值的大小决定使用%f活%e %p 用十六进制数格式化变量的地址
py3study
2020/01/07
8730
python中的转义字符
http://www.runoob.com/python3/python3-string.html
py3study
2020/01/10
3.8K0
Mybatis 中的转义字符
 记录以下mybatis中的转义字符,方便以后自己看一下 Mybatis转义字符表 &lt; < 小于 &gt; > 大于 &amp; & 与 &apos; ' 单引号 &quot; " 双引号 需要注意的是分号是必不可少的。 比如 a > b 我们就写成  a &gt; b 当然啦, 我们也可以用另外一种,就是<![CDATA[ ]]>符号。 在mybatis中这种符号将不会解析。 比如 <![CDATA[ when min(starttime)<='12:00' and max
Dato
2018/04/16
2.5K0
正则中需要转义的特殊字符
正则表达式中有一些特殊的字符需要转义,收集整理如下: 特殊字符         说明 $ 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n' 或 ‘\r'。要匹配 $ 字符本身,请使用 \$。 ( ) 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 \( 和 \)。 * 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。 + 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+。 . 匹配
流柯
2018/08/31
4.1K0
Linux Shell 中需要转义的字符
在 Linux Shell 中,有很多字符是有特殊含义的,如果期望把这个字符当作普通字符来处理,需要经过 \ 的转义。
walterlv
2023/10/22
1.8K0
HTML转义字符:xss攻击与HTML字符的转义和反转义
转义只是防止xss攻击的一种手段之一,更多请查看:《web开发前端安全问题总结——web前端安全问题汇总》
周陆军博客
2022/06/25
11.6K0
Utility之printf的格式化输出与转义字符
printf() - 向标准输出设备写入格式化语句。成功输出后,返回输出的字符数;否则返回负值
Taishan3721
2019/07/10
1.1K0
python字符串转义字符_python 转义
上图中因为python不知到如何处理一对单引号之后的内容,不能识别第三个单引号。(默认都是以一对单引号或双引号来表示字符串从结束到开始。)
全栈程序员站长
2022/11/01
7.2K0
python字符串转义字符_python 转义
python的转义字符
参考   Python转义字符 - 云+社区 - 腾讯云 转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制表符 \t 横向制表符 \r 回车 \f 换页 \oyy 八进制数,yy代表的字符,例如:\o12代表换行 \xyy 十六进制数,yy代表的字符,例如:\x0a代表换行 \other 其它的字符以普通格式输出
狼啸风云
2022/11/18
2K0
如何理解Power Query中的“#”转义字符?
我们在Power Query中有时候也会看到在公式中会有"#"字符存在,这个#字是什么意思呢?
逍遥之
2020/03/23
3.2K0
python 字符转义(url中文转义)
大家好,又见面了,我是你们的朋友全栈君。URL特殊字符需转义 1、空格换成加号(+) 2、正斜杠(/)分隔目录和子目录 3、问号(?)分隔URL和查询 4、百分号(%)制定特殊字符 5、#号
全栈程序员站长
2022/07/29
8K0
Python(转义字符、格式化输出、变量命名规则)
格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型:
亦小河
2022/11/14
7340
Python(转义字符、格式化输出、变量命名规则)
Python 编程 | 连载 06 - 格式化与转义字符
字符串的格式化既一个固定的字符串中有部分元素是根据变量的值改变而变化的字符串。字符串格式化常用在发送邮件短信或推送的时候,这种有固定的模板,只是针对不同的人发送的时候称呼会根据用户名的不同而不同。
RiemannHypothesis
2022/09/26
2830
Python 编程 | 连载 06 - 格式化与转义字符
JavaScript转义字符
转义字符是字符的一种间接表示方式。在特殊语境中,无法直接使用字符自身。例如,在字符串中包含说话内容。 "子曰:"学而不思则罔,思而不学则殆。""
用户3519280
2023/07/07
2470
小议转义字符
给小伙伴们简单的补充下转义字符相关的知识,在Java中的字母前面加上反斜线"\"来表示常见的那些不能显示的ASCII字符,我们称之为转义字符。如\0,\t,\n等,就称为转义字符。那么我们来看看下面这个例子: 假如你想在输出时显示如下带引号的信息,你能编写如下所示的这条语句吗? System.out.println("老九君说:"小伙伴你好!""); 答案是肯定的:不能!因为这条语句有语法错误。编译器会认为第二个引号字符就是这个字符串的结束标志,而不知道如何处理剩余的字符。 为了解决这个问题,Java定
老九君
2022/03/15
3.9K0
Java转义字符
定义 转义字符是一种特殊的字符常量。转义字符以反斜线""开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。 常见转义字符表 Java中需要转义的字符 在Java
Java架构师必看
2021/07/16
6.1K0
Python 转义字符
有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和R来定义原始字符串。如:
周小董
2019/03/25
3.9K0
Python 转义字符
\' 单引号 \" 双引号 \t 制表符 \n 换行符 \ 倒斜杠
py3study
2020/01/10
4.3K0
JS转义字符
1.用来防止字符串内容和程序的标点符号冲突 var a="来自\"星星\"的你"; 2.用来表示特殊的意义 1.\n   换行  2.\t   制表符   特殊: var path="C:\Windows\Temp";  问题:1.查找不到\w,自动去除    2.\t误翻译成制表符 解决:1.把替换成\    2.把替换为/ JavaScript转义符 转义序列 字符 \b 退格 \f 走纸换页 \n 换行 \r 回车 \t 横向跳格 (Ctrl-I) \' 单引号 \" 双引号 \\
十月梦想
2018/08/29
14.9K0
点击加载更多

相似问题

powershell转义替换中的转义字符

22

无法在powershell中转义管道字符(X)

22

cmd中的转义powershell字符

131

替换Powershell中的转义字符

20

转义PowerShell特殊字符

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文