以前的相关问题只有长度为== 1的分隔符.
我想要的是以下(例如)
str = 'Hello: Alice Hello: Bob Hello: Charlie Hello: David'
arr = str.magic_split('Hello:')
=> arr[0] = 'Hello: Alice '
arr[1] = 'Hello: Bob '
arr[2] = 'Hello: Charlie '
arr[3] = 'Hello: David'
Run Code Online (Sandbox Code Playgroud)
我尝试过str.scan(/ Hello:/),但不知道如何破解正则表达式以使其工作.非常感谢.
我看到一些答案仅适用于这种特殊情况.让我更具体一点.
我要分割的文件如下所示,分隔符为"证书:"
Certificate:
Data: ...
Signature Algorithm: ...
...
-----BEGIN CERTIFICATE-----
F19ibG6uZyBJbmR1c3RyaWVzIEluYzESMBAGA1UECwwJTWV6emFuaW5lMRMwEQYD\n
2O2RV6HR84N2/A5ZPRF8AQMXJCLIR4qMe/d97/1XK6JQQLUI5NaNroUkW3+tjXo/\n
ovl3vom6xOwUUcFDdv2QoCYBVADX7W2RaVP0JGfiDcekOTwtdos/tmsblboR8oEp\n
fbxD45AowT+khXnPDCQWWpslXJoKMBkaWH7ajb+yKfEYGzRPEmq+v/FPMY9mlJhX\n
epciB5FNO5krO+cyhky5tBZTIv7qCu3kc36dcQXIOTakc7CdoVgwLnytebwTqtpG\n
KuLLH46U8Pp3eeiDDBxYJlz6a2bsbtOaKb1CKMFB3x8LLfLbF4Sh+ScDHetkJDh5\n
...
Certificate:
...
Certificate:
...
Run Code Online (Sandbox Code Playgroud)
基本上,在"证书:"之间会有随机的ASCII字符.
再次感谢.
试试这个正则表达式:
(Hello:\s+.+?)(?=Hello:|$)
Run Code Online (Sandbox Code Playgroud)

http://rubular.com/r/l5WD6A1a2r