a = [1,2,3,4,5]
x = a[1:]
x.insert(0,5)
Run Code Online (Sandbox Code Playgroud)
这是有效的,但我想将所有这些语句组合成一个单独的语句,以便在列表理解中使用它
x = a[1:].insert(0,5)
Run Code Online (Sandbox Code Playgroud)
我可以看到这有什么问题,但我找不到一个正确的方法,
确切的代码有点类似于此
spacelist = [ alist[1:].extend(alist[:2].insert(0,1)) for i in range(0,len(alist))]
Run Code Online (Sandbox Code Playgroud)
我可以在这里看到mimstake,就像在切片上使用那些我们试图改变原始数组的方法一样.任何替代品?
说我有String s = "This is a loooooooooooooooong string";.现在说我要切断This并返回其他所有内容.我该怎么做?我问的是,是否有一种方法可以在x字符后返回所有内容?
我正在研究一个拼接输入的名字字符串的项目,由于某种原因它不起作用.部分内容是从我的书中复制的代码,据说可行,所以我卡住了.难道我做错了什么?
#include <iostream>
#include <string>
using namespace std;
void main()
{
string name;
int index;
cout<<"Please enter your full name. ";
cin>>name;
cout<<"\n"<<endl;
index = name.find(' ');
cout<<"First Name: "<<name.substr(0, index)<<" "<<name.substr(0, index).length()<<endl;
name = name.substr(index+1, name.length()-1);
index = name.find(' ');
cout<<"Middle Name: "<<name.substr(0, index)<<" "<<name.substr(0, index).length()<<endl;
name = name.substr(index+1, name.length()-1);
cout<<"Last Name: "<<name<<" "<<name.length()<<endl;
}
Run Code Online (Sandbox Code Playgroud) 我尝试找到不包含相同子字符串的字符串.这是我的代码:
var regex = new Regex(@"aaa(?!.*aaa).*aaa");
var str1 = @"aaa aaa aaa";
var match = regex.Match(str1); // no
var str1 = @"aaa bbb aaa";
var match = regex.Match(str1); // yes
Run Code Online (Sandbox Code Playgroud)
但是这段代码不起作用......我做错了什么?
谢谢!
我需要设置一个变量false,如果字符串以'1'开头,但是下面的代码返回一个真值?我试过"苹果"这个词.我的代码有问题吗?
String msgName=request.getParameter("msgName");
boolean insideIf=false;
if(msgName.substring(0,1).equals("1"));
{
insideIf=true;
System.out.println("if status :"+msgName.substring(0,1).equals("1"));
} System.out.println("insideIf :"+insideIf);
Run Code Online (Sandbox Code Playgroud) 我想从字符串中提取基本名称,比如
/opt/home/etc/sample
Run Code Online (Sandbox Code Playgroud)
也就是说,我想解析一个返回大字符串的字符串sample,或者解析最后一个/字符后面的子字符串.字符串可以是任何长度.
怎么可以这样做?
所以我有一个如下所示的文件名:
myFile.12345.txt
如果我想最终只使用"12345",如果12345的长度在1到5之间,我将如何从文件名中删除它?
小问题.使用我从文本文件转换的字符串:
std::string content((std::istreambuf_iterator<char>(istr) ),
(std::istreambuf_iterator<char>() ) );
Run Code Online (Sandbox Code Playgroud)
打印时,看起来像:
@....@........@......@....................@....@...............@..........@..@......
@....@..@@@...@......@.......@@@..........@....@..@@@....@@@...@..........@..@......
@@@@@@.@...@..@......@......@...@.........@....@.@...@..@......@.......@@@@..@......
@....@.@@@@...@......@......@...@.........@....@.@...@..@......@......@...@..@......
@....@.@......@......@......@...@.........@.@@.@.@...@..@......@......@...@.........
@....@..@@@@...@@.....@@.....@@@...........@..@...@@@...@.......@@.....@@@@..@......
....................................................................................
Run Code Online (Sandbox Code Playgroud)
然而,当我在这里使用此代码时:
for (int i = 0; i < (content.length()-6); i++){
std::string w = content.substr(i, 6);
std::cout << w << '\n';
}
Run Code Online (Sandbox Code Playgroud)
我按照自己的意愿获得了许多子串,但它们并不像我预期的那样.我的意图是有一些看起来像这样的东西(作为第一行的例子):
@....@
......
..@...
...@..
......
......
......
@....@
......
......
...@..
......
..@..@
......
Run Code Online (Sandbox Code Playgroud)
相反,我相信:
@....@
....@.
...@..
..@...
.@....
@.....
......
......
......
.....@
....@.
...@..
..@...
.@....
Run Code Online (Sandbox Code Playgroud)
我不确定为什么会这样,也许我认为substr做的事情不是吗?我只想获得第一行的前6个字母,然后是下一个6和下一个字母,依此类推,继续到字符串的第二行.
谢谢您的帮助!
我试图在这个简单的代码中从字符串中删除子字符串.但是c#没有删除它:
stringCmd = "Haha WoWI am in love!"
stringCmd.Remove(stringCmd.IndexOf("WoW"), 5);
Run Code Online (Sandbox Code Playgroud)
删除后应该是"哈哈恋爱!"
我正在android studio 1.1.0中工作,我正在尝试从字符串中删除所有\和\n,但是当我把它放入""它时它似乎不会将它识别为字符串绿色像普通的字符串,它在我的代码中没有任何想法吗?我正在实际的api15设备上测试它.
int i= string.indexOf("\")
string.substring(0, i)
Run Code Online (Sandbox Code Playgroud)
这样的事情就是我尝试过的