在Nifi中使用正则表达式删除多余的值时出错

时间:2019-06-19 13:27:37

标签: regex

我是以下示例数据

{
 CALLING_NBR = 1, / * nn svjfv ks;am scjv * /
 CALLED_NBR = 2, / * ssvdsv * / 
 EVENT_BEGIN_TIME = 3, / * * / 
 DURATION = 4, / * dhuf bvhsbv sjkncjsv jsvnjsdbv 
  the value of rthe vbisu * / 
 BILLING_PREFIX = 5 ,
 CALLING_CIRCLE_TYPE_ID = 6,

 CALL_TYPE = 7, / * call type* / 
CALLING_PREFIX = 8, / * calling e * / 

}

现在使用正则表达式方程式,我需要删除此/* */之间的所有数据 样本输出:-

    {
     CALLING_NBR = 1, 
     CALLED_NBR = 2, 
     EVENT_BEGIN_TIME = 3, 
     DURATION = 4,
     BILLING_PREFIX = 5,
     CALLING_CIRCLE_TYPE_ID = 6,
     CALL_TYPE = 7,
    CALLING_PREFIX = 8, 
   }

我用过这个正则表达式,但是没有用:

正则表达式:(/ *)+(.*?)+(* /)*
替换值:$1

1 个答案:

答案 0 :(得分:2)

对于示例数据,您可以匹配要删除的内容,然后替换为空字符串:

(?s)/ *\*.*?\* */

Regex demo

或匹配0+次乘以水平空白字符\h而不是空格:

(?s)/\h*\*.*?\*\h*/
  • (?s)点所有模式,使点与换行符
  • /\h*\*匹配/,0倍乘以水平空白字符和*
  • .*?匹配除换行符非贪婪以外的所有字符
  • \*\h*/匹配*,0+乘以水平空白和/

Regex demo