字符串依次查找问题!?

juicewall 2011-09-20 05:07:50
有一个字符串s,s的值可能是有无@字符的活有@字符的,如果是有@字符的我需要依次查到@后的指令进行相应的操作。
如:s='userkey@_md5_urlencode_other,我需要判断s是否含@,如果含有执行语句块A,如果不含有执行语句块B,如果含有@我还要依次判断含有指令是什么,指令以"_"分割,然后再执行相应的语句块,以下是伪代码,不知道写得大家能不能理解,
我就想知道怎么才能依次获取指令进行判断啊?请给出设计代码,多谢大家!
def str(s):
c=record['s'] #将s对应的值赋值给c变量
if s.find('@')!=-1:
a=获取s中含有指令的个数 #这个怎么搞定?
for i in range(a):
b=依次读取a个指令进行判断 #这个怎么搞定?
if b==‘MD5’:
return d=将c做MD5加密值d
if b==‘urlencode’:
return d=将d做urlencode的值重新赋值给d
if b=='base64':
return d=将d做base64操作重新赋值给d
if b==‘other’:
return d=将d做other的值赋值给d
else:
return c
...全文
79 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
juicewall 2011-09-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 panghuhu250 的回复:]
或者用re.split。

Python code

>>> import re
>>> re.split('[@_]', s)
8: ['userkey', '', 'md5', 'urlencode', 'other']
[/Quote]
谢谢!可以解决我的问题,把分给你。
panghuhu250 2011-09-20
  • 打赏
  • 举报
回复
或者用re.split。

>>> import re
>>> re.split('[@_]', s)
8: ['userkey', '', 'md5', 'urlencode', 'other']
panghuhu250 2011-09-20
  • 打赏
  • 举报
回复
用split可以逐步分解出你想要的部分。


>>> s = 'userkey@_md5_urlencode_other'
>>> s_items = s.split('@')
>>> s_items
5: ['userkey', '_md5_urlencode_other']
>>> s2='userkey'
>>> s2.split()
6: ['userkey']
>>> commands = s_items[1].split('_')
>>> commands
7: ['', 'md5', 'urlencode', 'other']
iambic 2011-09-20
  • 打赏
  • 举报
回复
唉,代码里全是全角符号,太不专业了……

你多举几个例子。每个例子对应什么样的期待结果。
比如你说的userkey@_md5_urlencode_other,根本看不明白你注释里说的什么意思。什么叫return d=?d是哪来的?c又是什么?代码里怎么能每次都return?
如果你不能写清楚代码,至少应该用自然语言把问题描述清楚。描述清楚问题本身也是在帮助你自己整理思路,是解决问题的第一步。
juicewall 2011-09-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 iambic 的回复:]

def str(s):
c=record['s'] #将s对应的值赋值给c变量
if s.find('@')!=-1:
a=获取s中含有指令的个数 #这个怎么搞定?
for i in range(a):
b=依次读取a个指令进行判断 #这个怎么搞定?
if b==‘MD5’:
return d=将c做MD5加密值d
if b==‘urlencode’:
return d=将d做urlencode的值重新赋值给d
if b=='base64':
return d=将d做base64操作重新赋值给d
if b==‘other’:
return d=将d做other的值赋值给d
else:
return c

[/Quote]
iambic 2011-09-20
  • 打赏
  • 举报
回复
把代码放到这里……
juicewall 2011-09-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 iambic 的回复:]
Python code

缩进……
[/Quote]
我敲代码的时候给缩进了,发出来就没缩进了,丫丫的!
iambic 2011-09-20
  • 打赏
  • 举报
回复
缩进……

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧