別のスタック オーバーフローの質問で提供されているパターンに基づいて、電話の正規表現を作成しようとしています。
これは、Python で作成するために使用した構文です。
def phoneRegex = r'^(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?$'
ただし、このコードを実行すると、次のエラーが表示されます。
^ SyntaxError: invalid syntax
私は何を間違っていますか?どういうわけか文字をエスケープする必要がありますか?