我有一个字符串:
[!] There was an error parsing `Gemfile`: Illformed requirement [">= 3.2, < 5.0"]. Bundler cannot continue.
# from /Users/myname/MySite/Gemfile:70
# -------------------------------------------
# gem 'capistrano-maintenance', '~> 1.0', :require => false
> gem 'rbnacl', '>= 3.2, < 5.0', :require => false
# gem 'rbnacl-libsodium', :require => false
# -------------------------------------------
我正在尝试制作一个将字符串分成两半的正则表达式模式。我相信它类似于:
S = 'ABCKFDJRFMDLERKDFLKERWERJF'
但这要复杂得多,因为我需要先找到将字符串分成两半的地方。我想做的是:
对于名为divider的函数,
word_1 = 'jupiter'
pattern_1 = re.compile('(\w+\s)'+word_1+'(\s\w+)')
我真的不明白在这种情况下首先要做什么。如果我的问题很难理解,请告诉我。
答案 0 :(得分:1)
如果我正确理解您的问题,您甚至不需要正则表达式,只需使用string.find()
:
def divider(s, splitter):
idx = s.find(splitter)
returrn s[:idx], s[idx+len(splitter):]
答案 1 :(得分:0)
你可以试试这个:
import re
S = 'ABCKFDJRFMDLERKDFLKERWERJF'
final_string = tuple(re.findall(".{"+str(len(S)//2)+"}", S))
输出:
('ABCKFDJRFMDLE', 'RKDFLKERWERJF')