Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.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,我有一个字符串,包含工作日和开放时间,如何使用正则表达式将其拆分为行?字符串的一个示例是: Mån - Tor6:30 - 22:00Fre6:30 - 20:00Lör9:00 - 18:00Sön10:00 - 19:00 我想分为小写字母和数字,数字和大写字母 Mån - Tor 6:30 - 22:00 Fre 6:30 - 20:00 Lör 9:00 - 18:00 Sön 10:00 - 19:00 提前谢谢 这在ruby中工作:(\D+)(\D+

我有一个字符串,包含工作日和开放时间,如何使用正则表达式将其拆分为行?字符串的一个示例是:

Mån - Tor6:30 - 22:00Fre6:30 - 20:00Lör9:00 - 18:00Sön10:00 - 19:00
我想分为小写字母和数字,数字和大写字母

Mån - Tor  
6:30 - 22:00  
Fre  
6:30 - 20:00  
Lör  
9:00 - 18:00  
Sön  
10:00 - 19:00 
提前谢谢

这在ruby中工作:
(\D+)(\D+:\D+-\D+:\D+)

您在Rubular上的示例:

如果您搜索
([a-z])(\d)
并将其替换为
$1\n$2
,它应该可以工作,但如果不了解您的编程语言和环境,很难给您一个直接的答案。

继续

(?<=\d)(?=\p{L})|(?<=\p{L})(?=\d)

(?当且仅当一个数字是具有
\pN
属性的码点时,非数字是任何缺少所述属性的码点,而非数字是为其写入
\pN

一些regex方言顽皮地坚持接受这些,比如
\p{N}
\p{N}
——这是无稽之谈,但你是语言设计师的奇思妙想、弱点、不安全感或无知的囚徒

在那些更具可读性的正则表达式方言中,您可以以更自由、更易读的方式编写它们,分别为
\p{Number}
\p{Number}

如果你指的是一个与数字不同的十进制数,你可以把它写成
\p{Nd}
,因此它的补码是
\p{Nd}
。这些数字的清晰版本是
\p{decimal\u number}
\p{decimal\u number}
。在某些编程语言中,这就是
\d
regex便利缩写的意思

有四个与数字相关的一般类别:

       N           Number
       Nd          Decimal_Number (also Digit)
       Nl          Letter_Number
       No          Other_Number
Alnum InCommonIndicNumberForms Numeric_Type:Numeric Numeric_Value:18 Numeric_Value:38 Numeric_Value:400 Numeric_Value:60000 Bidi_Class:Arabic_Number InCountingRodNumerals Numeric_Value:0 Numeric_Value:19 Numeric_Value:39 Numeric_Value:500 Numeric_Value:70000 Bidi_Class:European_Number InCuneiformNumbersAndPunctuation Numeric_Value:NaN Numeric_Value:20 Numeric_Value:40 Numeric_Value:600 Numeric_Value:80000 Block:Aegean_Numbers InEnclosedAlphanumerics Numeric_Value:1 Numeric_Value:21 Numeric_Value:41 Numeric_Value:700 Numeric_Value:90000 Block:Ancient_Greek_Numbers InEnclosedAlphanumericSupplement Numeric_Value:2 Numeric_Value:22 Numeric_Value:42 Numeric_Value:800 Numeric_Value:100000 Block:Common_Indic_Number_Forms InMathematicalAlphanumericSymbols Numeric_Value:3 Numeric_Value:23 Numeric_Value:43 Numeric_Value:900 Numeric_Value:100000000 Block:Counting_Rod_Numerals InNumberForms Numeric_Value:4 Numeric_Value:24 Numeric_Value:44 Numeric_Value:1000 Numeric_Value:1000000000000 Block:Cuneiform_Numbers_And_Punctuation InRumiNumeralSymbols Numeric_Value:5 Numeric_Value:25 Numeric_Value:45 Numeric_Value:2000 Other_Number Block:Enclosed_Alphanumeric_Supplement Letter_Number Numeric_Value:6 Numeric_Value:26 Numeric_Value:46 Numeric_Value:3000 PosixAlnum Block:Enclosed_Alphanumerics Line_Break:Infix_Numeric Numeric_Value:7 Numeric_Value:27 Numeric_Value:47 Numeric_Value:4000 Sentence_Break:Numeric Block:Mathematical_Alphanumeric_Symbols Line_Break:Numeric Numeric_Value:8 Numeric_Value:28 Numeric_Value:48 Numeric_Value:5000 Word_Break:ExtendNumLet Block:Number_Forms Line_Break:Postfix_Numeric Numeric_Value:9 Numeric_Value:29 Numeric_Value:49 Numeric_Value:6000 Word_Break:MidNum Block:Rumi_Numeral_Symbols Line_Break:Prefix_Numeric Numeric_Value:10 Numeric_Value:30 Numeric_Value:50 Numeric_Value:7000 Word_Break:MidNumLet Decimal_Number Number Numeric_Value:11 Numeric_Value:31 Numeric_Value:60 Numeric_Value:8000 Word_Break:Numeric General_Category:Decimal_Number Numeric_Type:De Numeric_Value:12 Numeric_Value:32 Numeric_Value:70 Numeric_Value:9000 XPosixAlnum General_Category:Letter_Number Numeric_Type:Decimal Numeric_Value:13 Numeric_Value:33 Numeric_Value:80 Numeric_Value:10000 General_Category:Number Numeric_Type:Di Numeric_Value:14 Numeric_Value:34 Numeric_Value:90 Numeric_Value:20000 General_Category:Other_Number Numeric_Type:Digit Numeric_Value:15 Numeric_Value:35 Numeric_Value:100 Numeric_Value:30000 InAegeanNumbers Numeric_Type:None Numeric_Value:16 Numeric_Value:36 Numeric_Value:200 Numeric_Value:40000 InAncientGreekNumbers Numeric_Type:Nu Numeric_Value:17 Numeric_Value:37 Numeric_Value:300 Numeric_Value:50000 还有许多其他与数字相关的类别:

       N           Number
       Nd          Decimal_Number (also Digit)
       Nl          Letter_Number
       No          Other_Number
Alnum InCommonIndicNumberForms Numeric_Type:Numeric Numeric_Value:18 Numeric_Value:38 Numeric_Value:400 Numeric_Value:60000 Bidi_Class:Arabic_Number InCountingRodNumerals Numeric_Value:0 Numeric_Value:19 Numeric_Value:39 Numeric_Value:500 Numeric_Value:70000 Bidi_Class:European_Number InCuneiformNumbersAndPunctuation Numeric_Value:NaN Numeric_Value:20 Numeric_Value:40 Numeric_Value:600 Numeric_Value:80000 Block:Aegean_Numbers InEnclosedAlphanumerics Numeric_Value:1 Numeric_Value:21 Numeric_Value:41 Numeric_Value:700 Numeric_Value:90000 Block:Ancient_Greek_Numbers InEnclosedAlphanumericSupplement Numeric_Value:2 Numeric_Value:22 Numeric_Value:42 Numeric_Value:800 Numeric_Value:100000 Block:Common_Indic_Number_Forms InMathematicalAlphanumericSymbols Numeric_Value:3 Numeric_Value:23 Numeric_Value:43 Numeric_Value:900 Numeric_Value:100000000 Block:Counting_Rod_Numerals InNumberForms Numeric_Value:4 Numeric_Value:24 Numeric_Value:44 Numeric_Value:1000 Numeric_Value:1000000000000 Block:Cuneiform_Numbers_And_Punctuation InRumiNumeralSymbols Numeric_Value:5 Numeric_Value:25 Numeric_Value:45 Numeric_Value:2000 Other_Number Block:Enclosed_Alphanumeric_Supplement Letter_Number Numeric_Value:6 Numeric_Value:26 Numeric_Value:46 Numeric_Value:3000 PosixAlnum Block:Enclosed_Alphanumerics Line_Break:Infix_Numeric Numeric_Value:7 Numeric_Value:27 Numeric_Value:47 Numeric_Value:4000 Sentence_Break:Numeric Block:Mathematical_Alphanumeric_Symbols Line_Break:Numeric Numeric_Value:8 Numeric_Value:28 Numeric_Value:48 Numeric_Value:5000 Word_Break:ExtendNumLet Block:Number_Forms Line_Break:Postfix_Numeric Numeric_Value:9 Numeric_Value:29 Numeric_Value:49 Numeric_Value:6000 Word_Break:MidNum Block:Rumi_Numeral_Symbols Line_Break:Prefix_Numeric Numeric_Value:10 Numeric_Value:30 Numeric_Value:50 Numeric_Value:7000 Word_Break:MidNumLet Decimal_Number Number Numeric_Value:11 Numeric_Value:31 Numeric_Value:60 Numeric_Value:8000 Word_Break:Numeric General_Category:Decimal_Number Numeric_Type:De Numeric_Value:12 Numeric_Value:32 Numeric_Value:70 Numeric_Value:9000 XPosixAlnum General_Category:Letter_Number Numeric_Type:Decimal Numeric_Value:13 Numeric_Value:33 Numeric_Value:80 Numeric_Value:10000 General_Category:Number Numeric_Type:Di Numeric_Value:14 Numeric_Value:34 Numeric_Value:90 Numeric_Value:20000 General_Category:Other_Number Numeric_Type:Digit Numeric_Value:15 Numeric_Value:35 Numeric_Value:100 Numeric_Value:30000 InAegeanNumbers Numeric_Type:None Numeric_Value:16 Numeric_Value:36 Numeric_Value:200 Numeric_Value:40000 InAncientGreekNumbers Numeric_Type:Nu Numeric_Value:17 Numeric_Value:37 Numeric_Value:300 Numeric_Value:50000 Alnum InCommonIndicationNumberForms数字类型:数字值:18数字值:38数字值:400数字值:60000 Bidi_类:阿拉伯_数字输入计算棒数字值:0数字值:19数字值:39数字值:500数字值:70000 Bidi_类:欧洲_编号包括格式编号和标点符号数值:NaN数值:20数值:40数值:600数值:80000 块:爱琴海数字InClosedalphanumerics数值:1数值:21数值:41数值:700数值:90000 块:古希腊数字封闭数字补充数字值:2数字值:22数字值:42数字值:800数字值:100000 块:常用的字母数字符号形式数字值:3数字值:23数字值:43数字值:900数字值:100000000 块:在数字窗体中计数字符数值:4数值:24数值:44数值:1000数值:10000000000 块:楔形文字数字和标点符号数字值:5数字值:25数字值:45数字值:2000其他数字 块:封闭字母数字补充字母数字数值:6数值:26数值:46数值:3000 PosixAlnum 块:封闭字母数字行分隔符:中缀数字值:7数字值:27数字值:47数字值:4000句子分隔符:数字 块:数学字母数字符号行分隔符:数字值:8数字值:28数字值:48数字值:5000字分隔符:ExtendNumLet 块:数字形式行分隔符:后缀数字值:9数字值:29数字值:49数字值:6000字分隔符:MidNum 块:Rumi\u数字\u符号行\u中断:前缀\u数字\u值:10数字\u值:30数字\u值:50数字\u值:7000字\u中断:中间值 十进制数数字值:11数字值:31数字值:60数字值:8000字\u中断:数字 一般类别:十进制数字数字类型:反数字值:12数字值:32数字值:70数字值:9000 XPosixAlnum 一般类别:字母数字数字类型:十进制数值:13数值:33 Nu
       N           Number
       Nd          Decimal_Number (also Digit)
       Nl          Letter_Number
       No          Other_Number
Alnum InCommonIndicNumberForms Numeric_Type:Numeric Numeric_Value:18 Numeric_Value:38 Numeric_Value:400 Numeric_Value:60000 Bidi_Class:Arabic_Number InCountingRodNumerals Numeric_Value:0 Numeric_Value:19 Numeric_Value:39 Numeric_Value:500 Numeric_Value:70000 Bidi_Class:European_Number InCuneiformNumbersAndPunctuation Numeric_Value:NaN Numeric_Value:20 Numeric_Value:40 Numeric_Value:600 Numeric_Value:80000 Block:Aegean_Numbers InEnclosedAlphanumerics Numeric_Value:1 Numeric_Value:21 Numeric_Value:41 Numeric_Value:700 Numeric_Value:90000 Block:Ancient_Greek_Numbers InEnclosedAlphanumericSupplement Numeric_Value:2 Numeric_Value:22 Numeric_Value:42 Numeric_Value:800 Numeric_Value:100000 Block:Common_Indic_Number_Forms InMathematicalAlphanumericSymbols Numeric_Value:3 Numeric_Value:23 Numeric_Value:43 Numeric_Value:900 Numeric_Value:100000000 Block:Counting_Rod_Numerals InNumberForms Numeric_Value:4 Numeric_Value:24 Numeric_Value:44 Numeric_Value:1000 Numeric_Value:1000000000000 Block:Cuneiform_Numbers_And_Punctuation InRumiNumeralSymbols Numeric_Value:5 Numeric_Value:25 Numeric_Value:45 Numeric_Value:2000 Other_Number Block:Enclosed_Alphanumeric_Supplement Letter_Number Numeric_Value:6 Numeric_Value:26 Numeric_Value:46 Numeric_Value:3000 PosixAlnum Block:Enclosed_Alphanumerics Line_Break:Infix_Numeric Numeric_Value:7 Numeric_Value:27 Numeric_Value:47 Numeric_Value:4000 Sentence_Break:Numeric Block:Mathematical_Alphanumeric_Symbols Line_Break:Numeric Numeric_Value:8 Numeric_Value:28 Numeric_Value:48 Numeric_Value:5000 Word_Break:ExtendNumLet Block:Number_Forms Line_Break:Postfix_Numeric Numeric_Value:9 Numeric_Value:29 Numeric_Value:49 Numeric_Value:6000 Word_Break:MidNum Block:Rumi_Numeral_Symbols Line_Break:Prefix_Numeric Numeric_Value:10 Numeric_Value:30 Numeric_Value:50 Numeric_Value:7000 Word_Break:MidNumLet Decimal_Number Number Numeric_Value:11 Numeric_Value:31 Numeric_Value:60 Numeric_Value:8000 Word_Break:Numeric General_Category:Decimal_Number Numeric_Type:De Numeric_Value:12 Numeric_Value:32 Numeric_Value:70 Numeric_Value:9000 XPosixAlnum General_Category:Letter_Number Numeric_Type:Decimal Numeric_Value:13 Numeric_Value:33 Numeric_Value:80 Numeric_Value:10000 General_Category:Number Numeric_Type:Di Numeric_Value:14 Numeric_Value:34 Numeric_Value:90 Numeric_Value:20000 General_Category:Other_Number Numeric_Type:Digit Numeric_Value:15 Numeric_Value:35 Numeric_Value:100 Numeric_Value:30000 InAegeanNumbers Numeric_Type:None Numeric_Value:16 Numeric_Value:36 Numeric_Value:200 Numeric_Value:40000 InAncientGreekNumbers Numeric_Type:Nu Numeric_Value:17 Numeric_Value:37 Numeric_Value:300 Numeric_Value:50000