[英]How to generate a string or array with every non letter or number character?
[英]For every letter in a string, print its ascii character representation
我正在從套接字中讀取內容,並嘗試調試一些傳入的消息。現在,我正在嘗試查看是否有任何“不可見的”字母潛入我的正則表達式中。 我執行以下操作以獲取文字字符串值。
socket.on('data', function (data) {
const message = data.toString('ascii');
let characters = [];
message.forEach((letter, i) => characters.push(message.charCodeAt(i)));
console.log(characters);
});
結果看起來像這樣:
[58, 13, 10, 26]
我想讓人們更容易理解,而無需(手動)查找ascii表上的每個字母。 也就是說,列表看起來更像這樣:
[':', '\r', '\n', 'ctrl-z']
// or
[':', 'carriage return', 'new line', 'substitution']
有什么方法可以通過Node.js做到這一點嗎?
在節點5.1中,您可以將字符串拆分為一個字符數組,然后console.log該數組。 內置的console.log將為非打印字符打印轉義碼:
socket.on('data', function(data){
const message = data.toString('ascii');
console.log(message.split(''))
})
如果使用的是較低版本的node,則可以使用node中的util包來獲取字符的字符串文字表示形式。
這樣的事情應該起作用:
socket.on('data', function(data){
const message = data.toString('ascii');
console.log(message.split('').map(function(c){
return require('util').inspect(c);
}))
})
使用message.charAt(i)
代替charCodeAt
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.