我有以下一行,我想用逗号将其分开。
“克拉克·肯特,你好,韦恩先生,发送于3:38 PM。”
听起来容易吗?问题是文本不包含单个逗号字符。您在文本中看到的逗号是单个字符,是逗号和空格的组合(只需将上面的句子复制粘贴到文本编辑器中并签出即可)。
问题是:我需要用逗号分隔文本。尽管我可以复制粘贴字符并将其添加为分隔符之一,但是我想知道是否可以将此类文本转换为可以用逗号分割的文本。好吧,现在不用担心中文单词。您在文本中看到的最后一个字符也是如此。实际上,当我的应用程序语言设置为中文时,就会出现这种情况。
仅供参考:我以为这样的逗号是不可打印的/不能是ascii字符,但是令我惊讶的是,当我在控制台中打印文本时,得到了:
这是我的输入和预期的输出:
输入:"Clark Kent,Hello Mr.Wayne,发送于 3:38 PM。"
预期输出:{"Clark Kent", "Hello Mr.Wayne", "发送于 3:38 PM。"}
。
答案 0 :(得分:1)
您面对的逗号是'Fullwidth Comma'(十六进制:0xff0c)。常规的unicode字符,可以使用string.Replace方法替换为逗号和空格:
`Js`
$(document).ready(function() {
DivImage("sup");
var s = skrollr.init({
render: function(data) {
console.log(data.curTop);
}
});
//Check the screen size.
(function() {
if (screen.width < 768) {
$("#fullpage").fullpage({
//scrollingSpeed: 0,
});
$(".DESKScreen").css("display", "none");
} else if (screen.width > 768) {
$(".MObileScreen").css("display", "none");
}
})();
//Fakeloader for the loadtime
function loader() {
$("#fakeloader").fakeLoader({
timeToHide: 4000,
bgColor: "#e74c3c",
spinner: "spinner2"
});
}
loader();
});
function DivImage(name) {
//console.log(name);
//a counter to set for div id
let counter = 0;
//create the urls based on a nr
var Images = makeUrls();
//first create the div and pass the counter to it
CreateDiv(Images);
}
function makeUrls() {
let base = "images/";
let rest = ".jpg";
let result = [];
for (let i = 0; i < 191; i++) {
let baseNr = 1 + i;
if (baseNr === 2000) {
console.log("base");
} else {
result.push(base + baseNr + rest);
}
}
return result;
}
function CreateDiv(images) {
// debugger;
var from = 0,
to = 0;
let result = [];
for (let i of images) {
var newDiv = $('<div class="img-div"></div>');
newDiv.css({
backgroundImage: `url(${i})`
});
newDiv.attr("data--" + from + "-top", "opacity: 0;");
from += 125;
newDiv.attr("data--" + from + "-top", "opacity: 0;");
from += 125;
newDiv.attr("data--" + from + "-top", "opacity: 1;");
newDiv.attr("data-anchor-target", "#slide");
newDiv.attr("data-skrollr-decks-speed", "300");
$("#slide").append($(newDiv));
}
}
答案 1 :(得分:0)
我建议(与评论中的@Chris相同)是在拆分之前用常规逗号替换您奇怪的逗号值。
var s = "Clark Kent,Hello Mr.Wayne,发送于 3:38 PM。";
s = s.Replace(',', ',');
var splitted = s.Split(',');
好处是,如果找到奇怪的逗号,它将替换为其他,并使用常规逗号进行处理。