对我来说,看起来perl split永远不会给出结果(""),即单个元素列表,其单个元素是空字符串.无论什么 - 任何输入,任何参数split.任何人都可以表示否则 如果没有,这是一个功能还是一个bug?
我希望split能够保持一致性,但唉:
请注意,无论指定的LIMIT如何,将评估为空字符串的EXPR拆分始终会产生零字段.
http://perldoc.perl.org/functions/split.html
例如:
$ echo ""|perl -ne 'chomp;print 0+split/x/,$_,-1'
0
$ echo "x"|perl -ne 'chomp;print 0+split/x/,$_,-1'
2
$ echo "xx"|perl -ne 'chomp;print 0+split/x/,$_,-1'
3
$ echo "xxx"|perl -ne 'chomp;print 0+split/x/,$_,-1'
4
Run Code Online (Sandbox Code Playgroud) 首先,我根本不熟悉Perl.我在过去的半年里一直在研究C++.我现在正在上课,那是教授Linux命令的,我们在Linux上使用的语言上有一些简短的主题,包括Perl,这完全是我的循环(没有双关语).我有一个文本文件,其中包含一些由空格和制表符分隔的随机数字,甚至可能是换行符,它们通过文件句柄读入程序.我应该写两行代码来分割数字行并将它们合并到一个数组中,在foreach循环中.我不是在寻找答案,只是在正确的方向上轻推.我一直在尝试不同的事情多个小时,感觉完全傻我无法得到它,我完全迷失了语法.它只是有点奇怪的不在编译器内工作和我在C++之外工作的舒适区.对此,我真的非常感激.我收录了几张照片.基本上,我们编写的代码只是为了存储数字和程序的其余部分将确定所有数字的最小数量和总和.我的目前不正确,因为我不知道该怎么做.在输出照片中,它将显示通过文本文件输入的所有数字,以便您可以看到它们.
我想知道如何解析(或拆分)和列表元素?
我有一个列表(字符串)列表,如:
resultList = [['TWP-883 PASS'], ['TWP-1080 PASS'], ['TWP-1081 PASS']]
Run Code Online (Sandbox Code Playgroud)
哪里:
resultList[0] = ['TWP-883 PASS']
resultList[1] = ['TWP-1080 PASS']
Run Code Online (Sandbox Code Playgroud)
基本上,我需要一个变量用于列表的每个元素中的两个条目.例如:
issueId = 'TWP-883'
status = 'PASS'
Run Code Online (Sandbox Code Playgroud)
什么允许迭代这个列表并解析如上所述?
问题 我试图将用户输入分配为字典中的键.如果用户输入是键,则打印出其值,否则打印无效键.问题是键和值将来自文本文件.为简单起见,我将使用随机数据作为文本.任何帮助,将不胜感激.
file.txt的
狗,树皮
猫,喵喵
鸟,唧唧
码
def main():
file = open("file.txt")
for i in file:
i = i.strip()
animal, sound = i.split(",")
dict = {animal : sound}
keyinput = input("Enter animal to know what it sounds like: ")
if keyinput in dict:
print("The ",keyinput,sound,"s")
else:
print("The animal is not in the list")
Run Code Online (Sandbox Code Playgroud) 我有这个代码显示上一页中的所有目录.
$dirs = array_filter(glob('../*'), 'is_dir');
foreach ($dirs as $nav) {
echo "<li><a href='$nav'>".$nav."</a></li>";
}
Run Code Online (Sandbox Code Playgroud)
输出是这样的:
是否有可用于../从输出字符串中删除前缀的函数或方法?
谢谢.
如何从C中的字符串中剥离文件扩展名?
例如,
如果我有文件扩展名的文件名
hello.txt的
你好ç
hello.java
应该只产生没有扩展名的文件名
你好
文件扩展名的长度无关紧要.
该功能也应该是便携式的,而不是系统相关的.
我知道如何使用strchr或获取文件扩展名strrchr.我已经在Bash和Python中完成了这个,但我从来没有在C中这样做过.
注意:这是个人练习,有助于加强我对C编程语言的理解.
我尝试将以下字符串拆分为3个部分:
Esmael20170101one => Esmael 20170101 one
Run Code Online (Sandbox Code Playgroud)
有什么选择?
这看起来像一个简单的问题,但不是我的情况.
我有一份清单
list0 = ['amigohello','amigobye']
Run Code Online (Sandbox Code Playgroud)
我想从中删除"amigo".如果我尝试:
for x in list0:
print x.split("amigo")
Run Code Online (Sandbox Code Playgroud)
它给了我下一个:
['', 'hello']
['', 'bye']
Run Code Online (Sandbox Code Playgroud)
我试过了:
for x in list0:
x = str(x.split("amigo"))
print x.split("[''")
Run Code Online (Sandbox Code Playgroud)
也:
for x in list0:
print x.strip('amigo')
Run Code Online (Sandbox Code Playgroud)
它给了我:
hell
bye
Run Code Online (Sandbox Code Playgroud)
最奇怪的是,如果我将'amigohello'改为'amigohoeollo',在这个输出中不会删除所有'o'
当然我试过x.strip('amigo')[0]
我只想在字符串上删除所有"amigo",而不是amigo或ami.go.,只有在没有[]问题或解决[]问题的情况下才能找到amigo.谢谢.
我需要把一些句子分成单词。
例如:
Upper sentence.
Lower sentence. And some text.
Run Code Online (Sandbox Code Playgroud)
我这样做是:
String[] words = text.split("(\\s+|[^.]+$)");
Run Code Online (Sandbox Code Playgroud)
但是我得到的输出是:
Upper, sentence.Lower, sentence., And, some, text.
Run Code Online (Sandbox Code Playgroud)
它应该像这样:
Upper, sentence., Lower, sentence., And, some, text.
Run Code Online (Sandbox Code Playgroud)
请注意,我需要保留所有字符(。,-?!等)。
我想知道为什么下面的第二个打印语句不会删除\n输出但第一个打印语句.
str1 = "Line1-abcdef \nLine2-abc \nLine4-abcd \ndfsdf"
print (str1.split( ))
print (str1.split(' ', 2))
Run Code Online (Sandbox Code Playgroud)