小编gui*_* 桂林的帖子

如何在Vim中只替换全字匹配?

代码示例:

for file in files:
  do_something(root+file)
Run Code Online (Sandbox Code Playgroud)

我想替换file,f但我必须保持files.

通常我使用以下命令:

:%s/file/f/gcI
Run Code Online (Sandbox Code Playgroud)

但它也匹配files.有没有办法只匹配一个适用于(root + file)语法的整个单词?

regex vim

12
推荐指数
1
解决办法
4552
查看次数

python RuntimeError:字典在迭代期间改变了大小

我有这样的obj

{hello: 'world', "foo.0.bar": v1, "foo.0.name": v2, "foo.1.bar": v3}
Run Code Online (Sandbox Code Playgroud)

它应该扩展到

{ hello: 'world', foo: [{'bar': v1, 'name': v2}, {bar: v3}]}
Run Code Online (Sandbox Code Playgroud)

我在下面编写代码,拆分'.',删除旧密钥,如果包含'.',则追加新密钥,但它说RuntimeError: dictionary changed size during iteration

def expand(obj):
    for k in obj.keys():
        expandField(obj, k, v)

def expandField(obj, f, v):
    parts = f.split('.')
    if(len(parts) == 1):
        return
    del obj[f]
    for i in xrange(0, len(parts) - 1):
        f = parts[i]
        currobj = obj.get(f)
        if (currobj == None):
            nextf = parts[i + 1]
            currobj = obj[f] = re.match(r'\d+', …
Run Code Online (Sandbox Code Playgroud)

python

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

cluster.fork与childprocess.fork的区别是什么

简单的问题:cluster.fork之间的child_process.fork有什么不同

详情:

  1. 我可以将参数传递给cluster.fork

  2. 我可以在child_process.fork创建的ChildProcess中使用相同的端口或unixsock监听

node.js

12
推荐指数
1
解决办法
3696
查看次数

vim将字符替换为\n

我需要全部替换; 到\n,但:%s/;/\n/gc不起作用

regex vim substitution

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

Python:如何替换并知道它是否匹配

我知道re.sub(pattern, repl,text)在模式匹配时可以替换,然后返回代码我的代码

text = re.sub(pattern, repl, text1)
Run Code Online (Sandbox Code Playgroud)

我必须定义另一个变量来检查它是否被修改

text2 = re.sub(pattern, repl, text1)
matches = text2 != text1
text1 = text2
Run Code Online (Sandbox Code Playgroud)

并且,它有问题,例如text1='abc123def',pattern = '(123|456)',repl = '123',更换后,这是相同的,所以matches是假的,但实际上它会匹配.

python regex

9
推荐指数
1
解决办法
1961
查看次数

javascript:如何在没有jquery或其他库的情况下将表单数据序列化为字符串

如何以ajax方式发布表单数据,而不使用jquery或其他库.

我想定义一个ajaxForm函数,它可以序列化表单数据和AJAX帖子,然后通过javascript回调.

如果我有以下表格:

<form action="url" method="POST">
<table>
<tr><td>label...</td><td><input name="input1" type="text"/></td></tr>
<tr><td>label...</td><td><input name="input2" type="checkbox"/></td></tr>
<tr><td>label...</td><td><select name="input3"><options....></select></td></tr>
</table>
</form>
Run Code Online (Sandbox Code Playgroud)

我通过javascript获取了表单元素,然后将表单元素和回调函数传递给ajaxForm(表单,回调)函数.

任何人都可以举一个例子吗?非常感谢....

更新:我最大的问题是如何序列化表单数据?

再次更新:感谢您的所有回复.问题解决了.

我已将jquery表单插件迁移到纯javascript.我很高兴与你们分享.

https://github.com/guileen/ajaxform.js

button.onclick = function(){
  ajaxForm(form, function(xmlhttp){
    alert(xmlhttp.status);
    alert(xmlhttp.responseText);
  });
}
Run Code Online (Sandbox Code Playgroud)

javascript ajax serialization

9
推荐指数
1
解决办法
7663
查看次数

在javascript中`~`意味着什么

我查看了express的代码,看到这段代码 https://github.com/visionmedia/express/blob/master/lib/application.js#L490

if ('all' == envs || ~envs.indexOf(this.settings.env)) fn.call(this);
Run Code Online (Sandbox Code Playgroud)

~之前的意思是什么envs

javascript node.js

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

如何编写我自己的protobuf代码生成器

谷歌protobuf是RPC的一个很好的IDL.但我想知道如何为protobuf编写自己的代码生成器.

protocol-buffers

9
推荐指数
1
解决办法
4906
查看次数

如何统计我的按键频率和计数

我尝试重新键入我的键盘以更好地键入.

但我需要知道每个键包含符号的频率,如果包含tab shift ctrl将会很棒.我需要所有的按键会话,不仅字母的频率出现在英语单词中.

我使用ibus-pinyin作为我的输入法.和archlinux,真棒wm,没有安装kde和gnome.任何程序都可以帮助我吗?

BTW:dvorak出了什么问题. http://colemak.com/FAQ#What.27s_wrong_with_the_Dvorak_layout.3F

但是colemak也不适合我,因为我想要更多的synmbols.

但我必须保留一些数字,1-5从ibus中选择中文单词,你知道拼音字母频率与英文字母不一样.

linux keyboard keypress frequency-analysis

8
推荐指数
1
解决办法
2959
查看次数

使用node-mongodb-native时如何保持DRY

db.open(function(err,db){
  //handle error
  db.collection("book",function(err, collection){
     //handle error
     collection.doSomething1(... function(err, result){
         //handle error
         collection.doSomething2(... function(err, result){
            ...
         })
     })
  })
})
Run Code Online (Sandbox Code Playgroud)

但是每当我们想要做某事时我们都不会写db.open,但是我们必须确保在我们使用它时已经打开了db.

我们仍然不喜欢每次在相同的代码中处理错误.

我们也可以重用该集合.

像这样

errorHandledDB.doSomething1("book",... function(result){
    errorHandledDB.doSomething2("book",...function(result){
        ...
    })
})
Run Code Online (Sandbox Code Playgroud)

mongodb node.js

8
推荐指数
1
解决办法
2769
查看次数