小编Tim*_*ker的帖子

如何在Python中将HTML非ASCII数据编码为UTF-8

我试着这样做,我发现了这个错误:

>>> import re  
>>> x = 'Ingl\xeas'  
>>> x  
'Ingl\xeas'  
>>> print x  
Ingl?s  
>>> x.decode('utf8')  
Traceback (most recent call last):  
    File "<stdin>", line 1, in <module>  
    File "/usr/lib/python2.6/encodings/utf_8.py", line 16, in decode  
        return codecs.utf_8_decode(input, errors, True)  
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 4-5: unexpected end of data  
>>> x.decode('utf8', 'ignore')  
u'Ingl'  
>>> x.decode('utf8', 'replace')  
u'Ingl\ufffd'  
>>> print x.decode('utf8', 'replace')  
Ingl?  
>>> print x.decode('utf8', 'xmlcharrefreplace')  
Traceback (most recent call last):  
    File "<stdin>", line 1, in <module>  
    File …
Run Code Online (Sandbox Code Playgroud)

python unicode utf-8

2
推荐指数
1
解决办法
9829
查看次数

字母等级功能

我是python的新手,我需要编写一个函数,它取一个字母等级(a,b,c,d,f,可能带有+或 - )并返回一个数字等级.值为4,3,2,1,0.因此A将是4.0,B将是3.0.A +将数字等级值增加0.3,A-将数字等级减少0.3.应该可以使用大小写的.一些例子.

>>> letter2number('A-')
3.7

>>> letter2number('B+')
3.3

>>> letter2number('D')
1.0

>>> letter2number('a+')
4.3
Run Code Online (Sandbox Code Playgroud)

我不知道从哪里开始编码,我一直在寻找一些有用的代码.

python new-operator

2
推荐指数
1
解决办法
2601
查看次数

追加/格式化字符串

在C#格式化字符串我做:

string a = String.Format("/blah/blah/{0}_{1}/blah.html", int1, int2)
Run Code Online (Sandbox Code Playgroud)

在Python中,它会自动将整数转换为字符串吗?

我将如何在Python中执行类似上面的操作.

python

2
推荐指数
1
解决办法
79
查看次数

匹配的正则表达式

这是一个正常的寄存器名,可以是1-n个字符以a-zA-Z-,像

larry-cai, larrycai, larry-c-cai, l,
Run Code Online (Sandbox Code Playgroud)

-不能像第一个和最后一个角色一样

-larry, larry-
Run Code Online (Sandbox Code Playgroud)

我的想法是这样的

^[a-zA-Z]+[a-zA-Z-]*[a-zA-Z]+$
Run Code Online (Sandbox Code Playgroud)

但如果我的正则表达式,长度应为2

应该很简单,但不要怎么做

如果你可以写它并通过http://tools.netshiftmedia.com/regexlibrary/会很好

regex

2
推荐指数
1
解决办法
135
查看次数

一系列带连字符的键值对的正则表达式

我需要为这种格式的数据输入验证文本框 -

"TeSt12-12TeSt,12Test-AB12,......"

这基本上是用逗号(,)分割的一系列键值(关键连字符值)

Readlike

anyAlphaNumeric后跟连字符anyAlphaNumeric,然后是"可选来自此处"逗号和anyAlphaNumeric,后跟连字符anyAlphaNumeric,然后是逗号和anyAlphaNumeric,后跟连字符anyAlphaNumeric ...

这里1s可以是AZ,az,0-9例子 - 11-11有效111-111,无效(逗号后面跟另一个键值集)1-1,1-1有效1-无效(连字符后缺少值)1-1,111-111,11-11111,111-111111有效

regex asp.net webforms

2
推荐指数
1
解决办法
449
查看次数

无法验证连字符

我正在尝试验证包含"字母数字字符,支持的符号和空格"的名称.在这里,我只需要一个hyphen(-),但不是一个双hyphen(--).

这是我的代码如下:

$.validator.addMethod(
  'alphanumeric_only',
  function (val, elem) {
    return this.optional(elem) || /^[^*~<^>+(\--)/;|.]+$/.test(val);
  },
  $.format("shouldn't contain *.^~<>/;|")
);
Run Code Online (Sandbox Code Playgroud)

上面的代码,甚至不允许单个hyphen(-).如何允许单个连字符,但防止双连字符.任何帮助是极大的赞赏.

javascript regex jquery

2
推荐指数
1
解决办法
318
查看次数

查找具有特定格式的数字

我必须找到一个遵循特定格式的文件中的所有数字.格式如下:

每个数字都是正数或负数(符号可能存在​​也可能不存在,小数点前有一个或多个数字,小数点后有一个或多个数字).可能没有小数位.每个数字前后都可以有空格.两个数字用逗号(,)或分号(;)或冒号(:)分隔.例如(35.3,52.23; -623,623.62:-52,65)

所以在上面的例子中,我想列出六个数字.要搜索的数字列表在括号之间.到目前为止,我的代码如下所示:

def number_processing( file_location ):
    """"""

    import re

    file_variable = open( file_location )
    lines = file_variable.readlines()

    numbers = re.compile(r'[(] *[+]?[-]?[0-9][0-9]*[.]+[,]+[;]+[0-9][0-9]* *[)]')
    numbers_list = []

    for line in lines:
        for word in line.split(" "):
            match = numbers.match(word)
            if match:
                numbers_list.append(match.group())
      print numbers_list
Run Code Online (Sandbox Code Playgroud)

任何帮助是极大的赞赏!

python regex

2
推荐指数
1
解决办法
144
查看次数

pyparsing中的python正则表达式

你如何使下面的正则表达式用于pyparsing?它应该返回给定正则表达式的标记列表.

任何帮助将不胜感激!谢谢!

shell中的python正则表达式示例:

>>> re.split("(\w+)(lab)(\d+)", "abclab1", 3)
>>> ['', 'abc', 'lab', '1', '']
Run Code Online (Sandbox Code Playgroud)

我在pyparsing中尝试了这个,但我似乎无法弄清楚如何正确,因为第一个匹配是贪婪的,即第一个令牌将是'abclab'而不是两个令牌'abc''lab'.

pyparsing示例(高级别,即非工作代码):

name = 'abclab1'
location = Word(alphas).setResultsName('location')
lab = CaselessLiteral('lab').setResultsName('environment')
identifier = Word(nums).setResultsName('identifier')
expr = location + lab + identifier
match, start, end = expr.scanString(name).next()
print match.asDict()
Run Code Online (Sandbox Code Playgroud)

python regex pyparsing

2
推荐指数
1
解决办法
1656
查看次数

如果某个子字符串存在于内,如何防止正则表达式匹配?

HTML注释可以使用内联JavaScript作为不支持JS代码的旧浏览器的特殊块.这些块看起来像这样:

<!--
some js code
//-->
Run Code Online (Sandbox Code Playgroud)

我想在JS代码中区分'true'html注释.我写过这个正则表达式:

/<!--[^//]*?-->/g
Run Code Online (Sandbox Code Playgroud)

所以我想在内部用双斜杠排除匹配,但是正则表达式将//字符集视为//,而不是整个双斜杠//.我能做什么?

regex substring escaping

2
推荐指数
1
解决办法
235
查看次数

关于字典我不懂的东西

当我试图理解Python词典时,我比较了两个程序的输出.我不明白为什么输出不同.

两个程序都以

data = {
        'key1': 'value1',
        'key2': 'value2',
        'key3': 'value3'
        }
Run Code Online (Sandbox Code Playgroud)

第一个项目:

for keys in data.items():
    print keys
Run Code Online (Sandbox Code Playgroud)

第二个方案:

for keys, values in data.items():
    print keys, values
Run Code Online (Sandbox Code Playgroud)

输出是

('key3', 'value3')
('key2', 'value2')
('key1', 'value1')
Run Code Online (Sandbox Code Playgroud)

key3 value3
key2 value2
key1 value1
Run Code Online (Sandbox Code Playgroud)

为什么第一个输出显示带括号的字符串?

为什么第二个输出不显示逗号?

python

2
推荐指数
2
解决办法
77
查看次数