Регулярное выражение Python [ d ]

#python #regex

#python #регулярное выражение

Вопрос:

Я работаю над регулярным выражением python, я столкнулся с этой проблемой.

Действительный номер мобильного телефона — это десятизначное число, начинающееся с 7,8 или 9. мое решение для этого было :

 if len(x)==10 and re.search(r'^[7|8|9] [d ]

из-за чего я получал ошибку. позже я изменил его на

 if len(x)==10 and re.search(r'^[7|8|9] d 

для которого все тестовые примеры пройдены. Я хочу знать, в чем разница между использованием и неиспользованием  []  for  d   в регулярных выражениях?

Спасибо 


Комментарии:

1. [d] было бы правильно, [d ] означает один символ, который является либо числом, либо плюсом. Также удалите символы | s из класса символов, так как они рассматриваются как просто буквальные |

2. Я думаю, вам нужно прочитать руководство по регулярным выражениям. Кажется , вы используете [] то , что вам действительно нужно () .

3. [] ищет внутри один символ. Например: [abc] ищите a , b или c .

Ответ №1:

[d ] = одна цифра ( 0-9 ) или символ.

d = одна или несколько цифр.

Комментарии:

1. Escape-последовательности работают внутри [] , так что это цифра или .

Ответ №2:

Вы также могли бы сделать:

 if re.search(r'^[789]d{9}

позволяя регулярному выражению обрабатывать  len(x)==10  часть, используя явные длины вместо неограниченных повторений.


Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д...
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает:

 if (len(x)==10 and "789"==x[1:4]):
 

,x):
из-за чего я получал ошибку. позже я изменил его на


для которого все тестовые примеры пройдены. Я хочу знать, в чем разница между использованием и неиспользованием [] for d в регулярных выражениях?

Спасибо

Комментарии:

1. [d] было бы правильно, [d ] означает один символ, который является либо числом, либо плюсом. Также удалите символы | s из класса символов, так как они рассматриваются как просто буквальные |

2. Я думаю, вам нужно прочитать руководство по регулярным выражениям. Кажется , вы используете [] то , что вам действительно нужно () .

3. [] ищет внутри один символ. Например: [abc] ищите a , b или c .

Ответ №1:

[d ] = одна цифра ( 0-9 ) или символ.

d = одна или несколько цифр.

Комментарии:

1. Escape-последовательности работают внутри [] , так что это цифра или .

Ответ №2:

Вы также могли бы сделать:


позволяя регулярному выражению обрабатывать len(x)==10 часть, используя явные длины вместо неограниченных повторений.

Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д...
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает:


,x):

для которого все тестовые примеры пройдены. Я хочу знать, в чем разница между использованием и неиспользованием [] for d в регулярных выражениях?

Спасибо

Комментарии:

1. [d] было бы правильно, [d ] означает один символ, который является либо числом, либо плюсом. Также удалите символы | s из класса символов, так как они рассматриваются как просто буквальные |

2. Я думаю, вам нужно прочитать руководство по регулярным выражениям. Кажется , вы используете [] то , что вам действительно нужно () .

3. [] ищет внутри один символ. Например: [abc] ищите a , b или c .

Ответ №1:

[d ] = одна цифра ( 0-9 ) или символ.

d = одна или несколько цифр.

Комментарии:

1. Escape-последовательности работают внутри [] , так что это цифра или .

Ответ №2:

Вы также могли бы сделать:


позволяя регулярному выражению обрабатывать len(x)==10 часть, используя явные длины вместо неограниченных повторений.

Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д...
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает:


,x):

из-за чего я получал ошибку. позже я изменил его на


для которого все тестовые примеры пройдены. Я хочу знать, в чем разница между использованием и неиспользованием [] for d в регулярных выражениях?

Спасибо

Комментарии:

1. [d] было бы правильно, [d ] означает один символ, который является либо числом, либо плюсом. Также удалите символы | s из класса символов, так как они рассматриваются как просто буквальные |

2. Я думаю, вам нужно прочитать руководство по регулярным выражениям. Кажется , вы используете [] то , что вам действительно нужно () .

3. [] ищет внутри один символ. Например: [abc] ищите a , b или c .

Ответ №1:

[d ] = одна цифра ( 0-9 ) или символ.

d = одна или несколько цифр.

Комментарии:

1. Escape-последовательности работают внутри [] , так что это цифра или .

Ответ №2:

Вы также могли бы сделать:


позволяя регулярному выражению обрабатывать len(x)==10 часть, используя явные длины вместо неограниченных повторений.

Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д…
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает:


, x):позволяя регулярному выражению обрабатывать len(x)==10 часть, используя явные длины вместо неограниченных повторений.

Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д…
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает:


,x):

из-за чего я получал ошибку. позже я изменил его на


для которого все тестовые примеры пройдены. Я хочу знать, в чем разница между использованием и неиспользованием [] for d в регулярных выражениях?

Спасибо

Комментарии:

1. [d] было бы правильно, [d ] означает один символ, который является либо числом, либо плюсом. Также удалите символы | s из класса символов, так как они рассматриваются как просто буквальные |

2. Я думаю, вам нужно прочитать руководство по регулярным выражениям. Кажется , вы используете [] то , что вам действительно нужно () .

3. [] ищет внутри один символ. Например: [abc] ищите a , b или c .

Ответ №1:

[d ] = одна цифра ( 0-9 ) или символ.

d = одна или несколько цифр.

Комментарии:

1. Escape-последовательности работают внутри [] , так что это цифра или .

Ответ №2:

Вы также могли бы сделать:


позволяя регулярному выражению обрабатывать len(x)==10 часть, используя явные длины вместо неограниченных повторений.

Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д…
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает:


,x):для которого все тестовые примеры пройдены. Я хочу знать, в чем разница между использованием и неиспользованием [] for d в регулярных выражениях?

Спасибо

Комментарии:

1. [d] было бы правильно, [d ] означает один символ, который является либо числом, либо плюсом. Также удалите символы | s из класса символов, так как они рассматриваются как просто буквальные |

2. Я думаю, вам нужно прочитать руководство по регулярным выражениям. Кажется , вы используете [] то , что вам действительно нужно () .

3. [] ищет внутри один символ. Например: [abc] ищите a , b или c .

Ответ №1:

[d ] = одна цифра ( 0-9 ) или символ.

d = одна или несколько цифр.

Комментарии:

1. Escape-последовательности работают внутри [] , так что это цифра или .

Ответ №2:

Вы также могли бы сделать:


позволяя регулярному выражению обрабатывать len(x)==10 часть, используя явные длины вместо неограниченных повторений.

Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д…
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает:


,x):из-за чего я получал ошибку. позже я изменил его на


для которого все тестовые примеры пройдены. Я хочу знать, в чем разница между использованием и неиспользованием [] for d в регулярных выражениях?

Спасибо

Комментарии:

1. [d] было бы правильно, [d ] означает один символ, который является либо числом, либо плюсом. Также удалите символы | s из класса символов, так как они рассматриваются как просто буквальные |

2. Я думаю, вам нужно прочитать руководство по регулярным выражениям. Кажется , вы используете [] то , что вам действительно нужно () .

3. [] ищет внутри один символ. Например: [abc] ищите a , b или c .

Ответ №1:

[d ] = одна цифра ( 0-9 ) или символ.

d = одна или несколько цифр.

Комментарии:

1. Escape-последовательности работают внутри [] , так что это цифра или .

Ответ №2:

Вы также могли бы сделать:


позволяя регулярному выражению обрабатывать len(x)==10 часть, используя явные длины вместо неограниченных повторений.

Ответ №3:

Я думаю [] , что вам нужно общее объяснение и.

[] будет совпадать с одним символом, указанным внутри.
Например: [qwe] будет совпадать с q , w или e .

Если вы хотите ввести выражение внутри [] , вам нужно использовать его как [^ expression] .

будет соответствовать предыдущему элементу один или несколько раз. Например: qw e спички qwe , qwwe , qwwwwe , и т.д…
Примечание: это отличается от * * совпадений, предшествующих элементу ноль или более раз. т.е. qw*e совпадений qe также.

d совпадения с цифрами. (не только 0-9 , но и цифры из других языковых сценариев.)

Ответ №4:

Я не знаю о сложности, но это тоже работает: