用于字符串验证的正则表达式 [x_name1_zded|we3e_name2_235|yyy_name3_3435]
RegEx for String Validation [x_name1_zded|we3e_name2_235|yyy_name3_3435]
我有要求检查,是否在产品中获得有效输入
产品字符串示例 =“x_name1_zded|we3e_name2_235|yyy_name3_3435”
每个保护都用“|”分隔。
每个产品信息都用“_”分隔
在此示例中有 3 个产品
1->x_name1_zded
2->we3e_name2_235
3->yyy_name3_3435
每个产品有 3 个详细信息,示例产品 1 id:x,名称:name1,商店:zded。
我需要 RegEx 来验证我们是否用“|”分隔,至少应该有 3 个部分(id、名称、商店),用户可以发送 N 个带有“|”的产品。
所以 RegEx 应该验证产品是否存在,而不是应该有 3 个部分。
我正在尝试在 Json 模式验证器中,在模式部分
假设,每个详情部分可以包含a-z个字母和0-9个数字,至少1个符号。详细信息部分将是 [a-z0-9]+
。我们必须至少有 3 个部分除以 _
- 有一个部分,然后至少有 2 个“定界符 + 部分”序列(伪代码):
section (delimiter section)*(2 or more times)
在正则表达式中,单个产品将是:
[a-z0-9]+(_[a-z0-9]+){2,}
接下来。可以是N个产品。如果 N 是任何大于或等于 1 的值——那么我们可以使用相同的模式:
product (delimiter product)*(zero or more times)
所以正则表达式的最终版本是:
[a-z0-9]+(_[a-z0-9]+){2,}(\|[a-z0-9]+(_[a-z0-9]+){2,})*
\|
是转义分隔符,因为 |
是正则表达式元符号。 *
表示“零次或多次”。
您可以在描述您的详细信息部分的任何其他正则表达式中替换 [a-z0-9]+
。
例如,参见 example。
我有要求检查,是否在产品中获得有效输入
产品字符串示例 =“x_name1_zded|we3e_name2_235|yyy_name3_3435”
每个保护都用“|”分隔。
每个产品信息都用“_”分隔
在此示例中有 3 个产品
1->x_name1_zded
2->we3e_name2_235
3->yyy_name3_3435
每个产品有 3 个详细信息,示例产品 1 id:x,名称:name1,商店:zded。
我需要 RegEx 来验证我们是否用“|”分隔,至少应该有 3 个部分(id、名称、商店),用户可以发送 N 个带有“|”的产品。 所以 RegEx 应该验证产品是否存在,而不是应该有 3 个部分。
我正在尝试在 Json 模式验证器中,在模式部分
假设,每个详情部分可以包含a-z个字母和0-9个数字,至少1个符号。详细信息部分将是 [a-z0-9]+
。我们必须至少有 3 个部分除以 _
- 有一个部分,然后至少有 2 个“定界符 + 部分”序列(伪代码):
section (delimiter section)*(2 or more times)
在正则表达式中,单个产品将是:
[a-z0-9]+(_[a-z0-9]+){2,}
接下来。可以是N个产品。如果 N 是任何大于或等于 1 的值——那么我们可以使用相同的模式:
product (delimiter product)*(zero or more times)
所以正则表达式的最终版本是:
[a-z0-9]+(_[a-z0-9]+){2,}(\|[a-z0-9]+(_[a-z0-9]+){2,})*
\|
是转义分隔符,因为 |
是正则表达式元符号。 *
表示“零次或多次”。
您可以在描述您的详细信息部分的任何其他正则表达式中替换 [a-z0-9]+
。
例如,参见 example。