Regex 如何在scala的json文件中为特定模式创建正则表达式模式
我试图创建一个正则表达式模式来匹配Json文件中的模式。Json文件由以下类型的模式组成- 例子Regex 如何在scala的json文件中为特定模式创建正则表达式模式,regex,scala,Regex,Scala,我试图创建一个正则表达式模式来匹配Json文件中的模式。Json文件由以下类型的模式组成- 例子 “原始”:“\\” “原始”:“真实” “原始”:“”” 原始属性可以在双引号之间具有任何类型的值。我想匹配所有像这样的模式,并在该位置用相同长度的“*”替换它 我创建了一个模式“”“raw”:(“.”)“”.r,该模式在编辑器中正常工作,但在scala中不正常,它在raw之后给出完整的字符串 如何实现这一点?将匹配图案的一部分替换为与图案部分长度相同的星号,您可以使用 正则表达式是 (\"ra
“原始”:“\\”
“原始”:“真实”
“原始”:“””
“”“raw”:(“.”)“”.r
,该模式在编辑器中正常工作,但在scala中不正常,它在raw之后给出完整的字符串
如何实现这一点?将匹配图案的一部分替换为与图案部分长度相同的星号,您可以使用 正则表达式是
(\"raw\":\\s*\")([^\"]+)(\")
|___ Group1 ___||_ G2 _||G3|
它匹配并捕获到组1(由于捕获括号)“raw”:
,然后0+个空格(带有\s*
),然后捕获到组2中除“
”以外的任何一个或多个字符,然后捕获到组3中的双引号
在
ReplaceAllIn
的帮助下,您可以将匹配数据传递到lambda表达式中,在替换发生之前可以在该表达式中操作匹配。因此,m
是匹配对象,m.group(1)
是组1值,m.group(2)。length
是组2值的长度,m.group(3)
此处保存“
字符,第3组值。谢谢您通知我这一点。我很少发布关于堆栈溢出的问题,因此我没有意识到这一点。从现在开始,我会处理这些事情。
(\"raw\":\\s*\")([^\"]+)(\")
|___ Group1 ___||_ G2 _||G3|