我必须拆分并将%20
放在数字之间
var code="247834"
到
2%204%207%208%203%204
看起来很简单,但我无法将其转换 感谢scala或java中的任何答案。
答案 0 :(得分:7)
在Scala中,
code.mkString("%20")
答案 1 :(得分:4)
无论使用何种语言,您的一般技巧应该是将字符串拆分为数组,然后将其与字符串'%20'连接起来。在PHP中,这将是
$array = str_split( $code);
$result = join( '%20', $array);
在Javascript中:
var code="247834";
var myArray = code.split();
var result = myArray.join( '%20');
在一个声明中:
var result = code.split().join('%20');
// or "247834".split().join('%20');
爪哇 - :
char[] myArray = "247844".toCharArray();
char[] result = StringUtils.join( myArray, '%20');
(后者可能需要进行细微更改,例如,在Android的TextUtils中使用连接方法并交换参数顺序)
答案 2 :(得分:1)
在Javascript中
var code = "247834";
var output = '';
for (var i = 0; i < code.length; ++i)
{
output = output + code.charAt(i) + ((i < code.length - 1) ? '%20' : '');
}
alert(output);
答案 3 :(得分:0)
从结尾开始,您可以使用字符串缓冲区插入分隔符。这是最简单的解决方案,可能不是最快的。
2%204%207%208%203%204
2-4-7-8-3-4
import java.lang.StringBuffer;
public class Test {
public static void main(String[] args) {
String str = "247834";
System.out.println(separate(str, "%20"));
System.out.println(separate(str, "-"));
}
public static String separate(String str, String delim) {
StringBuffer buff = new StringBuffer(str);
for (int i = str.length(); i > 0 ; i--) {
if (i < str.length()) {
buff.insert(i, delim);
}
}
return buff.toString();
}
}