小编Tzu*_*hay的帖子

确定当前浏览器是否支持`<input type ="email"..(例如)?的最简单方法是什么?

使用HTML5,以下标记就足以让浏览器处理输入验证.

它将验证输入是否与电子邮件地址格式匹配以及实际提供的格式:

<input id="email" name="email" type="email" placeholder="Email address" required/>
Run Code Online (Sandbox Code Playgroud)

没有必要挂钩事件,既不是输入框也不是提交按钮,就好了.

我正在寻找一种方法来决定浏览器是否已经支持此功能,或者我应该自己处理输入验证.

我想知道是否有办法直接推进,或者我是否应该保留所有可能的品牌 - 版本组合和支持标志的表格.

javascript validation html5 cross-browser

5
推荐指数
1
解决办法
959
查看次数

python str.strip奇怪的行为

>>> t1 = "abcd.org.gz"
>>> t1
'abcd.org.gz'
>>> t1.strip("g")
'abcd.org.gz'
>>> t1.strip("gz")
'abcd.org.'
>>> t1.strip(".gz")
'abcd.or'
Run Code Online (Sandbox Code Playgroud)

为什么'.org'的'g'消失了?

python string

4
推荐指数
3
解决办法
719
查看次数

如何让这两个进程(程序)直接使用管道相互通信?

程序A,是无休止的ac程序,在stdin中接收输入,处理它并输出到stdout.

我想编写程序B(在python中),因此它将读取A的输出,并将其反馈给任何需要的东西.注意,每个程序必须只有一个实例,所以给定b1和b2是b的实例而不是:

$ b1 | a | b2
Run Code Online (Sandbox Code Playgroud)

我需要

$ b1 | a | b1 
Run Code Online (Sandbox Code Playgroud)

以下是最终期望结果的图表:

替代文字

python stdin stdout pipe stdio

4
推荐指数
1
解决办法
2840
查看次数

mongodb $ pull匹配regexp无法正常工作

我试图在列表上执行更新,愿意与regexp匹配.标准/ app /匹配.find而不是.update这一事实表明我做错了.有没有其他方法可以得到类似的结果?

> db.things.find({items:/app/})
{ "_id" : 3, "items" : [ "appstore.com", "engineapp.com", "asp.ca" ] }
> db.things.update({}, { $pull: { items: /app/} })
> db.things.find({items:/app/})
{ "_id" : 3, "items" : [ "appstore.com", "engineapp.com", "asp.ca" ] }
Run Code Online (Sandbox Code Playgroud)

mongodb

4
推荐指数
1
解决办法
1401
查看次数

python原始字符串赋值

给定一个文件包含如下行:

(?i:\bsys\.user_catalog\b)
Run Code Online (Sandbox Code Playgroud)

在读取这些行时,我希望该值是一个原始字符串(未转义),这意味着,在内存中,行应该是

r'(?i:\bsys\.user_catalog\b)'
Run Code Online (Sandbox Code Playgroud)

代替

(?i:\bsys\.user_catalog\b)
Run Code Online (Sandbox Code Playgroud)

当传递给诸如sqlobject之类的lib时,它会被转义.

例如,使用sqlobject,如果我声明

Table(column=r'(?i:\bsys\.user_catalog\b)')
Run Code Online (Sandbox Code Playgroud)

如果我说的话,我会得到理想的结果

Table(column='(?i:\bsys\.user_catalog\b)')
Run Code Online (Sandbox Code Playgroud)

我不.

所以问题基本上是,当我不处于声明/赋值模式(例如a = r'string')时,我可以传递原始字符串,而不是字符串已经在内存中.

python string sqlobject

4
推荐指数
1
解决办法
1万
查看次数

BeautifulSoup的C/CPP版本,特别是在处理格式错误的HTML时

是否有任何关于ac/cpp lib的建议,可以轻松地(尽可能多地)解析/迭代/操纵HTML流/文件,假设某些可能是格式错误,即标签未关闭等.

BeautifulSoup

html c c++ html-parsing

4
推荐指数
1
解决办法
4558
查看次数

有没有办法在lua(raw)中定义自动转义字符串?

以下几行是我需要在lua中使用的任意正则表达式.

['\";=]
!^(?:(?:[a-z]{3,10}\s+(?:\w{3,7}?://[\w\-\./]*(?::\d+)?)?/[^?#]*(?:\?[^#\s]*)?(?:#[\S]*)?|connect (?:\d{1,3}\.){3}\d{1,3}\.?(?::\d+)?|options \*)\s+[\w\./]+|get /[^?#]*(?:\?[^#\s]*)?(?:#[\S]*)?)$
'(?i:(?:c(?:o(?:n(?:t(?:entsmartz|actbot/)|cealed defense|veracrawler)|mpatible(?: ;(?: msie|\.)|-)|py(?:rightcheck|guard)|re-project/1.0)|h(?:ina(?: local browse 2\.|claw)|e(?:rrypicker|esebot))|rescent internet toolpak)|w(?:e(?:b(?: (?:downloader|by mail)|(?:(?:altb|ro)o|bandi)t|emailextract?|vulnscan|mole)|lls search ii|p Search 00)|i(?:ndows(?:-update-agent| xp 5)|se(?:nut)?bot)|ordpress(?: hash grabber|\/4\.01)|3mir)|m(?:o(?:r(?:feus fucking scanner|zilla)|zilla\/3\.mozilla\/2\.01$|siac 1.)|i(?:crosoft (?:internet explorer\/5\.0$|url control)|ssigua)|ailto:craftbot\@yahoo\.com|urzillo compatible)|p(?:ro(?:gram shareware 1\.0\.|duction bot|webwalker)|a(?:nscient\.com|ckrat)|oe-component-client|s(?:ycheclone|urf)|leasecrawl\/1\.|cbrowser|e 1\.4|mafind)|e(?:mail(?:(?:collec|harves|magne)t|(?: extracto|reape)r|(siphon|spider)|siphon|wolf)|(?:collecto|irgrabbe)r|ducate search vxb|xtractorpro|o browse)|t(?:(?: ?h ?a ?t ?' ?s g ?o ?t ?t ?a ? h ?u ?r ?|his is an exploi|akeou)t|oata dragostea mea pentru diavola|ele(?:port pro|soft)|uring machine)|a(?:t(?:(?:omic_email_hunt|spid)er|tache|hens)|d(?:vanced email extractor|sarobot)|gdm79\@mail\.ru|miga-aweb\/3\.4|utoemailspider| href=)|^(?:(google|i?explorer?\.exe|(ms)?ie( [0-9.]+)?\ ?(compatible( browser)?)?)$|www\.weblogs\.com|(?:jakart|vi)a|microsoft url|user-Agent)|s(?:e(?:archbot admin@google.com|curity scan)|(?:tress tes|urveybo)t|\.t\.a\.l\.k\.e\.r\.|afexplorer tl|itesnagger|hai)|n(?:o(?:kia-waptoolkit.* googlebot.*googlebot| browser)|e(?:(?:wt activeX; win3|uralbot\/0\.)2|ssus)|ameofagent|ikto)|f(?:a(?:(?:ntombrows|stlwspid)er|xobot)|(?:ranklin locato|iddle)r|ull …
Run Code Online (Sandbox Code Playgroud)

string lua escaping

3
推荐指数
1
解决办法
1348
查看次数

Python Unicode Ascii,Ordinal not in range,令人沮丧的错误

这是我的问题......

数据库以unicode存储所有内容.hashlib.sha256().digest()接受str并返回str.

当我尝试用数据填充哈希函数时,我得到了一个着名的错误:

UnicodeDecodeError: 'ascii' codec can't decode byte 0x90 in position 1: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)

这是我的数据

>>> db_digest
u"'\x90\x017~1\xe0\xaf4\xf2\xec\xd5]:j\xef\xe6\x80\x88\x89\xfe\xf7\x99,c\xff\xb7\x06hXR\x99\xad\x91\x93lM:\xafT\xc9j\xec\xc3\xb7\xea[\x80\xe0e\xd6\\\xd8\x16'\xcb6\xc8\xaa\xdf\xc9 :\xff"
>>> 
>>> hashlib.sha256(db_digest)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode character u'\x90' in position 1: ordinal not in range(128)
>>> 
>>> asc_db_digest
"'\x90\x017~1\xe0\xaf4\xf2\xec\xd5]:j\xef\xe6\x80\x88\x89\xfe\xf7\x99,c\xff\xb7\x06hXR\x99\xad\x91\x93lM:\xafT\xc9j\xec\xc3\xb7\xea[\x80\xe0e\xd6\\\xd8\x16'\xcb6\xc8\xaa\xdf\xc9 :\xff"
>>> hashlib.sha256(asc_db_digest)
<sha256 HASH object @ 0x7f7da0f04300>
Run Code Online (Sandbox Code Playgroud)

所以我要求的是将db_digest转换为asc_db_digest的方法

编辑 我已经改写了这个问题,因为我似乎没有在第一时间正确认识到问题.

python unicode

3
推荐指数
1
解决办法
5553
查看次数

使用upsert进行mongodb更新:true不会像插入一样

我试图updateupsertwhiwle提供我自己_id的关键.

事实证明,它只在我使用时才有效insert,如果upsert:true提供更新,新插入的文档会自动生成Mongo id.

见下文:

PRIMARY> db.internal.update({_id: "my_id"},{ "value": "xyz"}, {upsert:true})
PRIMARY> db.internal.find()
{ "_id" : ObjectId("50c6cbb21d8b512bc0fe9576"), "value" : "xyz" }
PRIMARY> db.internal.insert({_id: "my_id2", "value": "xyz"})
PRIMARY> db.internal.find()
{ "_id" : ObjectId("50c6cbb21d8b512bc0fe9576"), "value" : "xyz" }
{ "_id" : "my_id2", "value" : "xyz" }
Run Code Online (Sandbox Code Playgroud)

这是一个功能还是一个bug?

根据我在Mongo的文档中看到,这应该有效

mongodb

3
推荐指数
1
解决办法
5364
查看次数

开源许可证和我

我有一个软件,它编写并包含在几个组件中,每个组件都有自己的许可证.总而言之,正在使用的所有24个组件共享以下许可证:

  • 公共区域
  • GPL
  • LGPL
  • BSD
  • MPL

我问的问题是:

  1. 我可以出售这个链接到所有这些组件的软件的编译版本吗?
  2. 这是什么安装在服务器(作为服务)这有什么区别?
  3. 如果我修改代码怎么办,我必须告诉全世界我做了什么?

licensing open-source

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

在Lua的表中实现fallback/default-getter

有没有办法实现类似于python的机制__getitem__

例如,具有以下内容:

local t1 = {a=1, b=2, c=3, d=4} 
Run Code Online (Sandbox Code Playgroud)

如果在代码中,t1.e将被调用,那么我希望有其他东西返回而不是nil

lua

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

mongodb创建了80多个文件,每个文件2GB,而数据库是空的

背景:

我设置了replicaSet并使用不同的端口在localhost上启动了mongod的3个实例(1 arbiterOnly).

我没有注意到mongo正在创建数量和大小太多的文件,这根本没有意义.

看,没有数据插入mongodb,没有创建单个集合,但是,让它运行一个小时左右,我的/ data/DB_INSTANCE_X充满2GB文件.

我知道文件的大小可以使用预分配标志定义,但是,在输入单个文档之前,如此多的文件对我来说似乎是错误的.

mongodb

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

ZeroMQ Pub / Sub最简单的示例不起作用-我在做什么错?

遵循zmq文档中示例,这是我的一些小改动。

Publisher.py

import zmq
import random
import time

port = "5556"

context = zmq.Context()
socket = context.socket(zmq.PUB)
socket.bind("tcp://127.0.0.1:%s" % port)


while True:
    topic = random.randrange(9999,10005)
    messagedata = random.randrange(1,215) - 80
    print "%d %d" % (topic, messagedata)
    socket.send("%d %d" % (topic, messagedata))
    time.sleep(1)
Run Code Online (Sandbox Code Playgroud)

Subscriber.py

import sys
import zmq

port = "5556"

context = zmq.Context()
socket = context.socket(zmq.SUB)

print "Collecting updates from weather server..."
socket.connect ("tcp://127.0.0.1:%s" % port)


while True:
    print socket.recv()
Run Code Online (Sandbox Code Playgroud)

然后,我从终端执行它们,当发布者发布(即打印行)时,订阅者永远不会离开 socket.recv()

python sockets zeromq

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