小编Tod*_*obs的帖子

如何在 Ruby 中找到字符串的第一个非重复字母?

我有一个字符串"teststring"。我想在 Ruby 中找到第一个非重复出现的字符。

我有这个 Python 代码:

def first_non_repeat_character(teststring)
    unique=[]
    repeated=[]
    for character in teststring:
        if character in unique:
            unique.remove(character)
            repeated.append(character)
        else:
            if not character in repeated:
                unique.append(character)
    if len(unique):
        return unique[0]
    else: 
        return false
Run Code Online (Sandbox Code Playgroud)

ruby string

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

为什么'[0-9]*'在我的Python正则表达式中不匹配'abc',因为字符串中有零个或多个数字?

为什么这个正则表达式:

>>> r = re.compile("[0-9]*", re.DEBUG)
Run Code Online (Sandbox Code Playgroud)

像这样匹配:

>>> m = r.search("abc")
>>> m.group()
''
Run Code Online (Sandbox Code Playgroud)

我希望它匹配整个字符串,'abc'因为'a'满足条件即匹配0位数,然后贪婪匹配将包括整个字符串'abc'.

python regex grep python-2.7 character-class

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

按特定顺序傀儡 file_line

我尝试向 /etc/profile 添加三个系统强化行:

TMOUT=43200
readonly TMOUT
export TMOUT
Run Code Online (Sandbox Code Playgroud)

当然,这些行需要按照这个特定的顺序排列,而且我还必须预料到文件会被弄乱并且顺序错误。 我无法使用模板,因为有些主机具有无法更改的自定义配置文件。所以我必须能够附加这三行

所以我在清单中写道:

file_line { 'TMOUT':
  path     => '/etc/profile',
  ensure   => present,
  line     => 'TMOUT=43200',
  multiple => true,
  before   => 'readonly TMOUT',
  match    => '^TMOUT',
}
file_line { 'readonly TMOUT':
  path     => '/etc/profile',
  ensure   => present,
  line     => 'readonly TMOUT',
  multiple => true,
  before   => 'export TMOUT',
  after    => '^TMOUT=43200',
  match    => '^readonly TMOUT',
}
file_line { 'export TMOUT':
  path     => '/etc/profile',
  ensure   => present,
  line     => 'export TMOUT',
  multiple => true, …
Run Code Online (Sandbox Code Playgroud)

authentication environment-variables sh puppet

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

当没有匹配的.pyc文件时,Python如何运行模块代码?

如果我从Windows 7中的python命令行导入module1.py,我看到相应的module1.pyc文件出现在Python32/pycache /文件夹中.我的理解是这个字节码是由Python解释器执行的,但是我可以删除module1.pyc文件,我的模块函数(module1.func1()等...)仍然可以从命令行调用.调用函数但没有.pyc文件时运行的是什么?编译字节码时它是否也被复制到Python shell的运行时内存中?

python bytecode

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

如何在没有循环的连续变换管道中显示每个步骤的结果?

考虑以下示例Bash one-liner,其中字母"h","e"和"o"一次一个地从单词"hello"中删除,按顺序排列.只留下两个"l"字母;

$ echo "hello" | tr -d h | tr -d e | tr -d o
ll
Run Code Online (Sandbox Code Playgroud)

我试图找到一种方法,用于在一个班轮内向屏幕显示每个命令的输出,因此运行它的其他人可以看到发生了什么.继续上面的例子,我想输出如下;

$ echo "hello" | tr -d h | tr -d e | tr -d o
hello
ello
llo
ll
Run Code Online (Sandbox Code Playgroud)

这可能吗?根据上面单行的操作,我们将命令的输出带到垂直管道的命令.所以我假设我必须从管道中断打印到stdout,这会中断我写的"命令链".或者也许tee可以在这里使用,但我似乎无法实现欲望的影响. 更新:tee不会工作,因为它的输出仍然在管道的边界内,呃!

非常感谢.

bash pipe

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

如何将第一行的第一个字段复制到后续行?

试图让这个表达起作用,有人可以看一下并告诉我离我有多远吗?

我正在尝试获取第1行中的信息以传播到其他空白行.

Line 1 = "1234, type"
Line 2..99 = ", type"
Run Code Online (Sandbox Code Playgroud)

结果:第1行.. ="1234,类型"

这是表达方式

sed -i -R -n '{(^[^,]{});x;n;^,;s/^.{}/\1/;x;p;x;p}' SedExit.txt > Str.txt
Run Code Online (Sandbox Code Playgroud)

regex sed

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

activeadmin 更改密码按钮

我知道如何使用 devise 更改密码,但我不知道如何为当前管理员用户创建指向操作的链接。例如在电子邮件下添加链接。

更改密码

这将发送到一个动作调用:

send_reset_password_instructions
Run Code Online (Sandbox Code Playgroud)

我真的找不到 ActiveAdmin 的任何好的文档,官方站点公开了一些示例,但没有真正解释。它不清楚事情在哪里以及如何运作。

ruby-on-rails activeadmin

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

如何使用#each将所有哈希值三倍化?

我有一个哈希如下:

drinks = {"soda" => 3, "water" => 2, "beer" => 6}
Run Code Online (Sandbox Code Playgroud)

我想通过使用来显示每对的价值增加三倍each.

换句话说,我希望"soda"的值为9,"water"的值为6,等等.

ruby hash each

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

为什么"mkdir -p"会导致Bash权限错误?

如果我创建一个目录mkdir -p,它会导致脚本出现问题

$ mkdir -p test2/test2

$ cd test2/test2

$ echo '#!/bin/sh
> echo hello' > hello.sh

$ ./hello.sh
bash: ./hello.sh: Permission denied
Run Code Online (Sandbox Code Playgroud)

permissions bash mkdir

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

为什么从我的 Ruby 脚本调用 mktemp 会显示权限被拒绝?

我有以下 Ruby 代码:

cmd="
source= $(mktemp)
echo source
"
system("#{cmd}")
system("source= $(mktemp)")
Run Code Online (Sandbox Code Playgroud)

我希望代码执行“mktemp”命令并将临时文件名输出到变量“source”。但是,我收到的错误消息是:

sh: /tmp/tmp.EpXeLNkqjN: Permission denied

sh: /tmp/tmp.wVCqdqHSpp: Permission denied


------------------
(program exited with code: 0)
Press return to continue
Run Code Online (Sandbox Code Playgroud)

即使我以 root 身份运行该程序,错误也是一样的。

但是,当我仅运行 mktemp 命令时,没有问题。怎么了?

ruby permissions bash

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