我有这个字符串:
"B82V16814133260"
什么是从中获取两个字符串的最有效方法:
left part String:"B82V"rigth part string:"16814133260"
规则是这样的:取右边的所有数字并从中创建字符串,然后取出提醒并将其放入另一个字符串中.
这是我的解决方案,但它太笨重了!如何做到简短有效?
String leftString = "";
String rightString="";
foreach (char A in textBox13.Text.Reverse())
{
if (Char.IsNumber(A))
{
rightString += A;
}
else
{
break;
}
}
char[] arr = rightString.ToArray();
Array.Reverse(arr);
rightString=new string(arr);
leftString = textBox13.Text.Replace(rightString, "");
Run Code Online (Sandbox Code Playgroud) 我有一个看似简单的问题,即将逗号分隔String为标记,在以下情况下输出应包含空标记:
String逗号中的第一个字符是逗号.String是逗号.例如,对于String:",abd,def,,ghi,"应该产生输出:{"", "abd", "def", "", "ghi", ""}.
我已经尝试使用String.split,Scanner并且StringTokenizer对于这一点,但每个给出不同的不希望的输出(下文实施例).有人可以建议一个优雅的解决方案,最好使用JDK类吗?显然我可以自己编写代码,但我觉得我错过了上述三种方法之一.请注意,分隔符是固定的,String但不一定是逗号,也不是单个字符.
示例代码
import java.util.*;
public class Main12 {
public static void main(String[] args) {
String s = ",abd,def,,ghi,";
String[] tokens = s.split(",");
System.err.println("--- String.split Output ---");
System.err.println(String.format("%s -> %s", s, Arrays.asList(tokens)));
for (int i=0; i<tokens.length; ++i) {
System.err.println(String.format("tokens[%d] = %s", i, tokens[i]));
}
System.err.println("--- Scanner Output ---");
Scanner sc …Run Code Online (Sandbox Code Playgroud) 我有传入的数据,需要分成多个值...即.
2345 \n564532 \n345634 \n234 234543 \n1324 2435 \n
当我收到它时,长度是不一致的,当它存在时间距是不一致的,我想分析每个\n之前的最后3位数.如何断开字符串并将其转换为新字符串?就像我说的,这一轮,它可能有3个\n命令,下一次,它可能有10个,我如何创建3个新字符串,分析它们,然后在接下来的10个进入之前销毁它们?
string[] result = x.Split('\r');
result = x.Split(splitAtReturn, StringSplitOptions.None);
string stringToAnalyze = null;
foreach (string s in result)
{
if (s != "\r")
{
stringToAnalyze += s;
}
else
{
how do i analyze the characters here?
}
}
Run Code Online (Sandbox Code Playgroud) R中一个令人难以置信的基本问题但解决方案尚不清楚.
如何将一个字符向量分成单独的字符,即与paste(..., sep='')或相反stringr::str_c()?
比这更笨重的东西:
sapply(1:26, function(i) { substr("ABCDEFGHIJKLMNOPQRSTUVWXYZ",i,i) } )
"A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z"
Run Code Online (Sandbox Code Playgroud)
是否可以以其他方式完成,例如strsplit(),stringr::*或其他任何事情?
我正在尝试创建一个在所有"不同字符之间有空格的字符串,例如:
"11131221133112" should result in "111 3 1 22 11 33 11 2"
"1321131112" should result in "1 3 2 11 3 111 2"
Run Code Online (Sandbox Code Playgroud)
我尝试使用递归函数,不知道这是否是最好的方法因为我在PHP中找不到任何内置函数.这是我的功能:
function stringSplitter($str) {
$strArr = str_split($str);
foreach ($strArr as $key => $value) {
if ($key == count($strArr)-1) return (substr($str, 0));
if ($value != $strArr[$key+1]) {
return (substr($str, 0, $key+1)." ".stringSplitter(substr($str, $key)));
}
}
}
Run Code Online (Sandbox Code Playgroud)
出于某种原因,这个函数似乎无限迭代,我无法弄清楚为什么.我哪里出错了?
有一个更好的方法吗?我想使用explode来解决数组中的应答字符串,这可以直接完成吗?
我有一个字符串,其中包含格式化的货币值,45,890.00以及由逗号分隔的多个值45,890.00,12,345.00,23,765.34,56,908.50.
我想提取并处理所有货币值,但无法找出正确的正则表达式,这就是我所尝试的
public static void main(String[] args) {
String currencyValues = "45,890.00,12,345.00,23,765.34,56,908.50";
String regEx = "\\.[0-9]{2}[,]";
String[] results = currencyValues.split(regEx);
//System.out.println(Arrays.toString(results));
for(String res : results) {
System.out.println(res);
}
}
Run Code Online (Sandbox Code Playgroud)
这个输出是:
45,890 //removing the decimals as the reg ex is exclusive
12,345
23,765
56,908.50
Run Code Online (Sandbox Code Playgroud)
有人可以帮我这个吗?
我有我的字符串,$LINE我想$ITEMS成为它的数组版本,在单个选项卡上拆分并保留空白。这是我现在所处的位置:
IFS=$'\n' ITEMS=($(echo "$LINE" | tr "\t" "\n"))
Run Code Online (Sandbox Code Playgroud)
这里的问题IFS是一个或多个,所以它吞噬了换行符、标签等。我已经根据此处发布的其他问题尝试了其他一些方法,但他们认为所有字段中总会有一个值,永远不会为空。而那个似乎掌握关键的人远远超出了我并且对整个文件进行了操作(我只是拆分了一个字符串)。
我的偏好是纯 BASH 解决方案。
给出如下字符串:
text <- "abcdefghijklmnopqrstuvwxyz"
Run Code Online (Sandbox Code Playgroud)
我想将字符串切成子串,例如长度为10,并保留余数:
"abcdefghij"
"klmnopqrst"
"uvwxyz"
Run Code Online (Sandbox Code Playgroud)
我知道用于创建子字符串的所有方法都不会给我带有6个字符的余数子字符串.我尝试过以前类似问题的答案,例如:
> substring(text, seq(1, nchar(text), 10), seq(10, nchar(text), 10))
[1] "abcdefghij" "klmnopqrst" ""
Run Code Online (Sandbox Code Playgroud)
关于如何获得所需长度和任何剩余字符串的所有子串的任何建议都将非常感激.
对于类项目,我必须将文本文件加载到链接列表中.到目前为止,我已经能够从文件中读取,但我正在努力将其拆分为多个部分,以便我可以将其放入链接列表中.
例如,我想在空行处拆分这些项目:
David
Hunter
No1
Admin
约翰
史密斯
No11
销售
Jane
Appleby
No5
账户
我试过String[] people = record.Split('\n');但当然,这只是在每一行都分开了.
我也尝试过:
String[] people = record.Split('\n\r');
String[] people = record.Split('\r\n');
String[] people = record.Split('\n\n');
但是由于"字符文字中的字符过多"而无法编译
任何人都可以建议一种方法来做到这一点(最好没有正则表达式)?
我想在逗号(,)上用java分割字符串,但只要逗号(,)在某个括号之间,就不应该拆分.
例如,字符串:
"life, would, (last , if ), all"
Run Code Online (Sandbox Code Playgroud)
应该产量:
-life
-would
-(last , if )
-all
Run Code Online (Sandbox Code Playgroud)
我用的时候:
String text = "life, would, (last , if ), all"
text.split(",");
Run Code Online (Sandbox Code Playgroud)
我最终将整个文本划分为(最后,如果)我可以看到拆分需要一个正则表达式,但我似乎无法想到如何使它完成工作.