python取字符串中最后的一个特定字符之后的字符串

比如addhakshdaskhdsak----------------------------------12345.0怎么取出左后的‘12345.0’ 前面的是‘-’符号

import re
text = "addhakshdaskhdsak----------------------------------12345.0"
m = re.search(r'[^-]+$', text)
if m:
    print m.group(0)
else:
    print 'not search'

  可以使用正则表达式来实现,找出最后的多个非-内容

追问

如果是这种形式呢 该怎么做
djalsl dhalda sdfjad
djkaslj flasjf sal;jf
daks;jf as jfjsafja;
daks;dfk;ajdsja 123324.0

包含了多个回车和多个空格 该怎么找出123324.0 123324.0之前有一个空格或者一个换行

追答import re
text = """
djalsl  dhalda  sdfjad
djkaslj  flasjf  sal;jf
daks;jf  as  jfjsafja;
daks;dfk;ajdsja 123324.0
"""
m = re.search(r'\S+$', text)
if m:
    print m.group(0)
else:
    print 'not search' 

这样可以,这样可以,取出最后的非空白内容

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-27
str = "addhakshdaskhdsak----------------------------------12345.0"
str.find("12345.0") 找到"12345.0"所在位置的index
str[str.find("12345.0") - 1]即是你需要的字符追问

12345.0是变化的

追答

那你定义一个变量

pattern = "12345.0"

str[str.find("pattern") - 1]

追问

是在文本中的数值是变化的 你这样我都知道变量的值了 我还取那有什么必要?

追答

首先,你自己问题没描述清楚 !!!

其次,文本中的数值变化,你需要问的是怎么获得变化的文本值!!!然后保存在一个变量中。

第2个回答  2019-06-24
'addhakshdaskhdsak----------------------------------12345.0'.rsplit('-',1)[1]

str = 'addhakshdaskhdsak----------------------------------12345.0'
str[str.rfind('-')+1:]

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网