小编Cul*_*lip的帖子

如何在编程语言中编写"x == 1或2"?

可能重复:
为什么大多数编程语言只有二进制相等比较运算符?

自从我开始学习编程语言以来,我有一个很长时间的简单问题.

我想写"如果x是1或2 => TRUE(否则为FALSE)."

但是当我用编程语言编写它时,比如C,

( x == 1 || x == 2 )
Run Code Online (Sandbox Code Playgroud)

它确实有效,但看起来很尴尬,难以阅读.我想应该可以简化这样的操作,所以如果您有任何想法,请告诉我.谢谢,内森

language-design boolean-operations

25
推荐指数
8
解决办法
2404
查看次数

正则表达式:{n}和{n,m}忽略最大重复次数

我对正则表达式的最大重复次数有疑问:{n}和{n,m}。

$ man grep
...
Repetition
    A regular expression may be followed by one of several repetition operators:
...
    {n}    The preceding item is matched exactly n times.
    {n,}   The preceding item is matched n or more times.
    {,m}   The preceding item is matched at most m times.  This is a GNU extension.
    {n,m}  The preceding item is matched at least n times, but not more than m times.
...
Run Code Online (Sandbox Code Playgroud)

现在考虑一个测试文件:

$ cat ./sample.txt
1
12
123
1234
Run Code Online (Sandbox Code Playgroud)

然后将其重复[0-9](数字),精确重复2次:

$ …
Run Code Online (Sandbox Code Playgroud)

regex grep

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

使用shell的Vim,如何在Unix中停止像Cz这样的工作?

我有一个关于使用Vim编程的快速问题.我有时在程序中犯了一个愚蠢的错误.

例如,下面的Python代码有一个无限循环(比如foo.py......执行时要小心!)

x = 1
while x == 1:
    x = 1
Run Code Online (Sandbox Code Playgroud)

你不会看到任何结果,但在计算机内找到一个风扇变得越来越响亮,你需要停止执行这个Python程序.在Unix shell上,您可以按下来执行此操作Ctrl-z.或者,在Emacs shell模式下,只需按下即可Ctrl-c Ctrl-z.

我知道如何在Vim中切换到shell模式:( :sh然后键入python foo.py)或:!python foo.py.但是我不知道如何在不杀死Vim本身的情况下停止Vim的shell工作.有谁知道这个?

unix vim shell

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

标签 统计

boolean-operations ×1

grep ×1

language-design ×1

regex ×1

shell ×1

unix ×1

vim ×1