0

是,有更好的方法来提取字符串:

  'Found 1 items\ndrwxr-xr-x   - hadoop supergroup          0 2013-02-16 13:21 /user/hadoop/wiki\n'

所有的字符串都会像:

  'Found **n** items\n**permissions**   - **username** **group**          **notsurewhatthisis** **date** **time** **folders(or file)**\n'

现在..我将其拆分为:

line = line.split()
num_items = int(line[1])
permissions = line[3]

ETC..

所以基本上这是一个简单的解决方案..

试图看看是否有一种“python”方式来做到这一点。

4

1 回答 1

2
ss = ('Found 1 items\n'
      "drwxr-xr-x   - hadoop supergroup          "
      '0 2013-02-16 13:21 /user/hadoop/wiki\n')

('Found **n** items\n'
 '**permissions**   - **username** **group**          '
 '**notsurewhatthisis** **date** **time** **folders(or file)**\n')

import re

r = re.compile('Found +(\d+) +items *\n *(.+?) *- ')

print r.search(ss).groups()

ssis a string
'Found +(\d+) +items *\n *(.+?) *- '是用作创建正则表达式的模式的字符串 object
r是正则表达式,不是字符串的对象

于 2013-02-16T23:04:19.470 回答