在python中从字符串中获取最后一个单词
假设在python中从字符串中获取最后一个单词,python,Python,假设str='UPPER(\'Sales\“\'PRODUCT\u NAME\”)是我的字符串,我只想从这个字符串中获取'PRODUCT\u NAME'(最后一个单词)。我尝试了下面的技巧,但它没有为我提供正确的单词作为'PRODUCT\u NAME'。我怎样才能做到这一点?使用正则表达式有没有简单的方法来实现这一点 str='UPPER(\'Sales\'PRODUCTS\'PRODUCTS\'u NAME\)' val=str.strip(“(|”)”) val=val.split(“.”)
str='UPPER(\'Sales\“\'PRODUCT\u NAME\”)
是我的字符串,我只想从这个字符串中获取'PRODUCT\u NAME'
(最后一个单词)。我尝试了下面的技巧,但它没有为我提供正确的单词作为'PRODUCT\u NAME'
。我怎样才能做到这一点?使用正则表达式有没有简单的方法来实现这一点
str='UPPER(\'Sales\'PRODUCTS\'PRODUCTS\'u NAME\)'
val=str.strip(“(|”)”)
val=val.split(“.”)
val_final=val[-1]。带(“”)
使用re.findall
作为正则表达式选项,我们可以尝试:
inp='UPPER(\'Sales\'PRODUCTS\'PRODUCTS\'u NAME\”)
output=re.findall(r'^.*\b(\w+.*$',inp)
打印(输出[0])#打印产品_名称
对于如何工作的解释,正则表达式模式将匹配所有内容,直到最终单词边界,然后是最终单词。然后,我们访问此匹配以打印所需结果。使用
re.findall
对于正则表达式选项,我们可以尝试:
inp='UPPER(\'Sales\'PRODUCTS\'PRODUCTS\'u NAME\”)
output=re.findall(r'^.*\b(\w+.*$',inp)
打印(输出[0])#打印产品_名称
为了解释其工作原理,正则表达式模式将匹配所有内容,直到最后一个单词边界,然后是最后一个单词。然后,我们访问此匹配以打印所需的结果。strip()方法仅从字符串末端移除内容,因此您需要在提取最后一个单词后执行此操作(带有您不需要的其他字符):
string='UPPER(\'Sales\'PRODUCTS\'PRODUCTS\'u NAME\”)
val_final=string.split('.')[-1].strip(''))
另外,使用str
作为变量名不是一个好主意,因为它会覆盖内置的str
类型
有关strip()
这将删除字符串两端提供的所有字符。我猜想你所说的(|)是指(
或)
。只需将其写成split(“()”)
。在上面的解决方案中,我省略了(“
”,因为它不会出现在字符串的末尾。但是“
和”
会出现,所以我包括了这些。strip()
方法只会从字符串的末尾删除内容,所以您需要在提取最后一个单词后执行此操作(带有您不需要的其他字符):
string='UPPER(\'Sales\'PRODUCTS\'PRODUCTS\'u NAME\”)
val_final=string.split('.')[-1].strip(''))
另外,使用str
作为变量名不是一个好主意,因为它会覆盖内置的str
类型
有关strip()
这将删除字符串两端提供的所有字符。我怀疑
'(|)的意思是'('
或')
。只需将其写成拆分('()')
。在上述解决方案中,我省略了'('
),因为它不会出现在字符串的末尾。但是'“
和”
是的,所以我把这些都包括在内。@WasifHasan…我猜是因为盲目复制OP而支付的罚款…@WasifHasan…我猜是因为盲目复制OP而支付的罚款。。。