带分隔符的搜索操作

我有以下方案
搜索功能(可以是正向/反向)
例如:2-6-281651(起始偏移值)或2-6-"281-651"
我可以根据分隔分隔符(-)创建代码,但如果我的搜索字符串中有-,我们该如何处理。
我可以更改分隔符,但如果新的分隔符是字符串的一部分,我可以确保值在""中,
我正在尝试创建一个通用的解决方案,没有任何限制

# 回答1


你可以使用你的"用引号括起来"的解决方案。我不确定你的问题是什么。
# 回答2


您不需要使用正则表达式解决方案的报价。看看这对你是否有效:

选择 | 换行 | 行号
  1. import re
  2.  
  3. patt = re.compile(r"(\d+)-(\d+)-(.+)")
  4.  
  5. s ='2-6-281-651'
  6.  
  7. m = patt.match(s)
  8. if m:
  9.     print m.group(1)
  10.     print m.group(2)
  11.     print m.group(3)
  12.  
  13. s ='122-61-281651'
  14.  
  15. m = patt.match(s)
  16. if m:
  17.     print m.group(1)
  18.     print m.group(2)
  19.     print m.group(3)
# 回答3


我都忘了
最大拆分
争论。

选择 | 换行 | 行号
  1. >>> s = '2-6-281-651'
  2. >>> s.split('-',2)
  3. ['2', '6', '281-651']
  4. >>> 
# 回答4


使用不会出现在*#@之类的任何字符串中的分隔符。

标签: python

添加新评论