Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 用于查找此模式的正则表达式:_Regex - Fatal编程技术网

Regex 用于查找此模式的正则表达式:

Regex 用于查找此模式的正则表达式:,regex,Regex,请注意末尾的双竖条,一个竖条用作分隔符 例如,可以找到下面的粗体: 11 |任何字符串和数字| 939 |任何字符串|任何东西,包括delimter| 138151 |任何字符串和数字| 90139 | |任何内容,包括delimter | 13811 |任何字符串和数字9 | 885 |更多字符串|任何内容,包括delimter| 我正在查找第3个和第4个delimter之间的字段为空的行。我想您希望这样: new line integer | string | integer || 分解如

请注意末尾的双竖条,一个竖条用作分隔符

例如,可以找到下面的粗体:

11 |任何字符串和数字| 939 |任何字符串|任何东西,包括delimter|

138151 |任何字符串和数字| 90139 | |任何内容,包括delimter |

13811 |任何字符串和数字9 | 885 |更多字符串|任何内容,包括delimter|

我正在查找第3个和第4个delimter之间的字段为空的行。

我想您希望这样:

new line integer | string | integer ||
分解如下:

  • ^
    表示“行的开始”
  • \d+
    表示“至少一位”
  • \\\124;
    表示“文字垂直条形字符”(需要对其进行转义,因为它本身表示“逻辑或”)
  • [^ |]+
    表示“至少一个非垂直条形字符”。请注意,您不需要转义字符类中的字符
    […]
    (当然除了右括号
    ]
    • 我想你想要这个:

      new line integer | string | integer ||
      
      分解如下:

      • ^
        表示“行的开始”
      • \d+
        表示“至少一位”
      • \\\124;
        表示“文字垂直条形字符”(需要对其进行转义,因为它本身表示“逻辑或”)
      • [^ |]+
        表示“至少一个非垂直条形字符”。请注意,您不需要转义字符类中的字符
        […]
        (当然除了右括号
        ]

      根据语言/正则表达式的不同,您可以使用如下表达式:

      ^\d+\|[^|]+\|\d+\|\|
      

      根据语言/正则表达式的风格,您可以使用以下表达式:

      ^\d+\|[^|]+\|\d+\|\|
      
      你需要调整什么是“文本”,并创建要提取的组。您可以在此处进行测试:

      你需要调整什么是“文本”,并创建要提取的组。您可以在此处进行测试:

      对于单线:

      ^[0-9]+\|[ a-zA-Z0-9_]+\|[0-9]+\|.*\|$
      
      对于多行:

      \d+\|[^|]+\|\d+\|\|.*
      
      对于单线:

      ^[0-9]+\|[ a-zA-Z0-9_]+\|[0-9]+\|.*\|$
      
      对于多行:

      \d+\|[^|]+\|\d+\|\|.*
      

      |
      字符被称为“pipe”@Bohemian是吗?我认为这是在unix中执行的实际操作,而不是符号的名称?人们称之为“管道字符”。Wiki说,“pipe”是它的一个常见名称,因为(正如你所说)它在Unix中的意思,
      字符被称为“pipe”@Bohemian,是吗?我认为这是在unix中执行的实际操作,而不是符号的名称?人们称之为“管道字符”。Wiki说,“管道”是它的通用名称,这是因为(正如您所说)它在unix中的含义