Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.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 正则表达式匹配除“1”之外的所有8个字符串;00000000“;_Regex_Regex Negation - Fatal编程技术网

Regex 正则表达式匹配除“1”之外的所有8个字符串;00000000“;

Regex 正则表达式匹配除“1”之外的所有8个字符串;00000000“;,regex,regex-negation,Regex,Regex Negation,我试图找出一个正则表达式,它匹配任何带有8个符号的字符串,而不等于“00000000” 有人能帮我吗 至少在perl regexp中使用了一个否定的前瞻断言:^(?!0{8})。{8}$,感谢您,但我个人更愿意这样写: length$\u==8和$\ne'00000000' 还请注意,如果您确实使用regexp,根据语言的不同,您可能还需要一个标志来使点匹配换行符,如果您需要的话。在perl中,这是“单行模式”的/s标志。至少在perl regexp中使用了一个否定的前瞻断言:^(?!0{8})

我试图找出一个正则表达式,它匹配任何带有8个符号的字符串,而不等于“00000000”

有人能帮我吗


至少在perl regexp中使用了一个否定的前瞻断言:
^(?!0{8})。{8}$
,感谢您,但我个人更愿意这样写:

length$\u==8和$\ne'00000000'


还请注意,如果您确实使用regexp,根据语言的不同,您可能还需要一个标志来使点匹配换行符,如果您需要的话。在perl中,这是“单行模式”的
/s
标志。

至少在perl regexp中使用了一个否定的前瞻断言:
^(?!0{8})。{8}$
,但我个人更愿意这样写:

length$\u==8和$\ne'00000000'


还请注意,如果您确实使用regexp,根据语言的不同,您可能还需要一个标志来使点匹配换行符,如果您需要的话。在perl中,这是“单行模式”的
/s
标志。

除非您出于某种原因被迫使用它,否则这不是正则表达式问题。只需使用
len=8&&s!=“00000000”
或您的语言用来比较字符串和长度的任何东西。

除非您出于某种原因被迫使用它,否则这不是正则表达式问题。只需使用
len=8&&s!=“00000000”
或您的语言用于比较字符串和长度的任何内容。

除非您有未指定的要求,否则您确实不需要正则表达式:

if len(myString) == 8 and myString != "00000000":
    ...

(当然,使用您选择的语言!)

除非您有未指定的要求,否则您确实不需要正则表达式:

if len(myString) == 8 and myString != "00000000":
    ...

(当然,使用您选择的语言!)

如果需要从较大的字符串中提取不等于“000000000”的所有八个字符串,可以使用

"(?=.{8})(?!0{8})."

要识别每个序列的第一个字符并从其索引中提取八个字符。

如果需要从较大的字符串中提取不等于“000000000”的所有八个字符串,可以使用

"(?=.{8})(?!0{8})."
识别每个序列的第一个字符,并从其索引中提取八个字符。

([1-9]**\D*){8}会这样做吗?或者我在这里遗漏了什么(这实际上是ndim的反面,看起来应该有用)

我假设选择的字符包含超过个数字

好吧,那是错的,那么博洛教授,我的成绩是及格吗?(我喜欢reg表达式,所以我真的很好奇)

那工作?

不会([1-9]**\D*){8}做吗?或者我在这里遗漏了什么(这实际上是ndim的反面,看起来应该有用)

我假设选择的字符包含超过个数字

好吧,那是错的,那么博洛教授,我的成绩是及格吗?(我喜欢reg表达式,所以我真的很好奇)


这是可行的吗?

正如其他答案中提到的,正则表达式不是完成此任务的合适工具。我怀疑这是一个家庭作业,因此我将只提示一个解决方案,而不是明确说明


regexp“除00000000以外的任何8个符号”可以分解为8个regexp的总和,形式为“第i个位置上有非零符号的8个符号”。试着写下这样一个表达式,然后使用可选的(“|”)将它们组合成一个。

如其他答案中所述,正则表达式不是完成此任务的合适工具。我怀疑这是一个家庭作业,因此我将只提示一个解决方案,而不是明确说明


regexp“除00000000以外的任何8个符号”可以分解为8个regexp的总和,形式为“第i个位置上有非零符号的8个符号”。试着写下这样一个表达式,然后用可选的(“|”)将它们组合成一个表达式。

当然,只需检查一下即可

if stuff != '00000000'
   ...
但要记录在案,人们可以很容易地使用 重量级正则表达式(在Perl中),用于;-)

印刷品

00A00000 - ok
10000000 - ok
算了吧;-)

问候


当然,我们只需检查一下

if stuff != '00000000'
   ...
但要记录在案,人们可以很容易地使用 重量级正则表达式(在Perl中),用于;-)

印刷品

00A00000 - ok
10000000 - ok
算了吧;-)

问候


如果您需要一个正则表达式,
^(?!0{8})[a-Za-z0-9]{8}$
将匹配正好由8个字符组成的字符串。更改[]内的值将允许您设置接受的字符。

如果您需要正则表达式,
^(?!0{8})[a-Za-z0-9]{8}$
将匹配正好包含8个字符的字符串。更改[]中的值将允许您设置接受的字符。

我正在使用企业库验证,在这里需要添加正则表达式,这是我想知道如何计算regex。您的意思是
(s.length()==8)&(s!=“00000000”)
?True,如果这是一个家庭作业-它需要指定+1我正在使用企业库验证,我需要在其中添加正则表达式,这就是我想知道如何计算正则表达式。您的意思肯定是
(s.length()==8)和&(s!=“00000000”)
?是的,如果这是一个家庭作业,则需要指定它+1Christoffer-使用@Marcelo和@klausbyskov通知您的更改。。。通过这种方式,他们将在状态栏中收到一个真正的通知,并希望再次返回到您的答案:)请参阅Christoffer-使用@Marcelo和@klausbyskov通知您的更改。。。这样,他们将在状态栏中得到一个真正的通知,并希望再次返回到您的答案:)参见@James:问题是“任何带有8个符号的字符串”。但是这个问题严重地低估了这个问题,所以谁知道呢?@James:问题是“任何带有8个符号的字符串”。但是这个问题严重地低估了这个问题,所以谁知道呢?你的下一个问题是关于匹配的,除了“0000000000000000”…你的下一个问题是关于匹配的,除了“0000000000000000”…对,不是要匹配任何