如果我有像这样的iOS用户代理
Mozilla/5.0(iPhone; U; CPU iPhone OS 4_0,如Mac OS X; en-us)AppleWebKit/532.9(KHTML,类似Gecko)版本/ 4.0.5 Mobile/8A293 Safari/6531.22.7
要么
Mozilla/5.0(iPhone; U; CPU iPhone OS 4_0,如Mac OS X; en-us)AppleWebKit/532.9(KHTML,如Gecko)Mobile/7D11
我如何使用正则表达式检测iOS版本,以便它返回例如
4
对于上述用户代理?
我正在使用IO.popen启动子进程,但我只得到子进程退出时子进程运行所花费的时间(有时是5分钟或其他)所发生的一切结果.我真正需要的是能够看到的一切子进程写入stderr和stdoutAS-和当它发生.
到目前为止,我找不到任何像这样的东西,但我确信它是可能的.
railsinstaller运行良好,但我无法弄清楚如何将Ruby升级到1.9.3-p327,同时保持其他正常工作.我是这项技术的新手,所以如果这个问题的答案非常明显,我会道歉.
Enivironment:Windows 7家庭高级版 - Service Pack 1 - 64位
我想用TaskID_1从开始的序列替换String ,1001这TaskID_1可能在我的输入文件中存在任意多行.同样,我需要TASKID_2用下一个序列值替换输入文件中出现的所有内容1002.
输入文件:
12345|45345|TaskID_1|dksj|kdjfdsjf|12
1245|425345|TaskID_1|dksj|kdjfdsjf|12
1234|25345|TaskID_2|dksj|kdjfdsjf|12
123425|65345|TaskID_2|dksj|kdjfdsjf|12
123425|15325|TaskID_1|dksj|kdjfdsjf|12
11345|55315|TaskID_2|dksj|kdjfdsjf|12
6345|15345|TaskID_3|dksj|kdjfdsjf|12
72345|25345|TaskID_4|dksj|kdjfdsjf|12
9345|411345|TaskID_3|dksj|kdjfdsjf|12
Run Code Online (Sandbox Code Playgroud)
输出文件应如下所示:
12345|45345|1001|dksj|kdjfdsjf|12
1245|425345|1001|dksj|kdjfdsjf|12
1234|25345|1002|dksj|kdjfdsjf|12
123425|65345|1002|dksj|kdjfdsjf|12
123425|15325|1001|dksj|kdjfdsjf|12
11345|55315|1002|dksj|kdjfdsjf|12
6345|15345|1003|dksj|kdjfdsjf|12
72345|25345|1004|dksj|kdjfdsjf|12
9345|411345|1003|dksj|kdjfdsjf|12
Run Code Online (Sandbox Code Playgroud) 我有以下代码将多个文件连接在一起.它工作正常,但我想将空值替换为0,所以我使用-e"0".但它不起作用.有任何想法吗?
for k in `ls file?`
do
if [ -a final.results ]
then
join -a1 -a2 -e "0" final.results $k > tmp.res
mv tmp.res final.results
else
cp $k final.results
fi
done
Run Code Online (Sandbox Code Playgroud)
例:
file1:
a 1
b 2
file2:
a 1
c 2
file3:
b 1
d 2
Results:
a 1 0 1 0
b 2 1 0
c 2
d 2
expected:
a 1 1 0
b 2 0 1
c 0 2 0
d 0 0 2
Run Code Online (Sandbox Code Playgroud) 我有一组看起来像这样的数据
col1 col2 col3 col4
ABC1 DEF1 GHI1 cond1
ABC2 DEF2 GHI2 cond1-cond2
ABC3 DEF3 GHI3 cond2/cond1
ABC4 DEF4 GHI4 cond2 cond1
ABC5 DEF5 GHI5 cond4/cond1
ABC6 DEF6 GHI6 cond1
ABC7 DEF7 GHI7 mcond1
ABC8 DEF8 GHI8 cond2
ABC9 DEF9 GHI9 cond1 at 50
ABCa DEFa GHIa con cond1
ABCb DEFb GHIb no. cond1
ABCc DEFc GHIc cond1 something
ABCc DEFc GHIc Mcond1
Run Code Online (Sandbox Code Playgroud)
我正在尝试编写几个命令来根据"col4"分离数据,以获得:
包含字符串"cond1"的文件,除了"M"和"m"字母之外或之后的ANYTHING.我目前正在使用此命令(显然不排除M和m):
awk 'BEGIN{IGNORECASE=1} $4 ~ /.cond1/ || $4 ~ /cond1./ ' /filepath.tab
Run Code Online (Sandbox Code Playgroud)
另请注意,第4行,第9行和第11行数据包含"cond1"和其他字符串之间的空格,我希望在文件中包含此内容.(命令中的"."是否包含空格?)
我写了一个命令,只在"col4"中获取一个包含"cond1"的文件
awk 'BEGIN{IGNORECASE=1} …Run Code Online (Sandbox Code Playgroud)有没有办法打印文件的前N个单词?我试过切,但它逐行读取文件.我想出的唯一解决方案是:
sed ':a;N;$!ba;s/\n/?/g' file | cut -d " " -f -20 | sed 's/?/\n/g'
Run Code Online (Sandbox Code Playgroud)
基本上,用文件中不存在的字符替换换行符,将空格作为分隔符应用"cut",然后恢复换行符.
有没有更好的解决方案?
我正在尝试使用sbt-assembly并且无法安装它.
从自述文件中逐字逐句地添加了项目/ plugins.sbt和依赖项:
addSbtPlugin("com.eed3si9n"%"sbt-assembly"%"0.8.7")
然后我添加了一个build.sbt文件,其中包含自述文件的内容:
import AssemblyKeys._ //将它放在文件的顶部
assemblySettings
启动sbt时出现此错误:
[error] /Users/me/git/stest/project/Build.scala:29:not found:value assemblySettings [error] .settings(assemblySettings:_*)[error] ^ [error]发现一个错误[错误]( compile:compile)编译失败
我回去尝试了另一个在另一个stackoverflow帖子中看到的替代:
SEQ(assemblySettings:_*)
同样的问题.有任何想法吗?(Scala 2.10.0)
任何人都可以告诉我如何插入chr第一列中的每个字符.
档案
1 34566 34765
2 45678 45789
3 34567 34799
X 67895 66900
Y 34567 34890
Run Code Online (Sandbox Code Playgroud)
归档
chr1 34566 34765
chr2 45678 45789
chr3 34567 34799
chrX 67895 66900
chrY 34567 34890
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚如何sed -i申请特定的专栏.我对语法不好,所以如果你能解释你的解释,我将不胜感激.另外,为此使用awk会更好吗?
我试图加快从h5py数据集文件中读取块(将它们加载到RAM内存中)的过程.现在我尝试通过多处理库来做到这一点.
pool = mp.Pool(NUM_PROCESSES)
gen = pool.imap(loader, indices)
Run Code Online (Sandbox Code Playgroud)
加载器功能是这样的:
def loader(indices):
with h5py.File("location", 'r') as dataset:
x = dataset["name"][indices]
Run Code Online (Sandbox Code Playgroud)
这实际上有时有效(意味着预期的加载时间除以进程数并因此并行化).但是,大部分时间它没有,加载时间只是保持与按顺序加载数据时一样高.有什么办法可以解决这个问题吗?我知道h5py支持通过mpi4py进行并行读/写,但我只想知道这对于只读也是绝对必要的.