問題タブ [non-printing-characters]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 印刷できないUnicode文字を置き換える方法(Javascript)
私はすでに(他のソースによって生成された)文字列を処理するのにかなりの時間を浪費しており、問題は文字列に印刷できない文字が含まれていることであることがわかりました。今日はjavascriptを扱っています。JavaScriptで印刷できないUnicode文字を置き換える方法を知っている人はいますか?
私はここで似たようなものを見つけました:
Javaで印刷できないUnicode文字を置き換えるにはどうすればよいですか?
my_string.replaceAll("\\p{C}", "?");
そしてここ:
非ASCII文字はSafariブラウザでのみフォーム入力を追加しました
filename.replace(/[^a-z0-9\.]+/gi, "");
最後のオプションは、角かっこに含まれていないすべての文字を置き換えます。これは、私が取り組んでいる言語に関係なく、常に後部で私を悩ませてきたものであり、どの文字が私のコードを台無しにしているのかを理解しようとするのにうんざりしています。このため、これらの非表示の文字をすべて表示可能なものに置き換えて、後で完全に削除できるようにしたいと思います。
r - データフレームから特殊文字を削除します
「Energyper�m」という文字列を含むマトリックスがあります。'm'の前には、疑問符が付いたひし形の記号があります。これが何であるかはわかりません。
マトリックスの列でこれを使用して、それを取り除こうとしました。
[そしてgsubの最初の項にコピー/貼り付けを使用]、しかしそれは機能しません。[ "a = rep(5、Energyper""の予期しない記号]。greplで元のマトリックスから何かを抽出しようとすると:
どうすればこの種の兆候をすべて取り除くことができますか?0〜9、AZ、az、/、および'のみが必要です。残りはザッピングすることができます。
non-printing-characters - 印刷不能文字のフィルタリングのベスト プラクティス
発券システムのフロントエンドを構築しているときに、QA チームが発見した問題に遭遇しました。
問題は、印刷できない文字をフィルタリングしていないことです。これにより、奇妙な問題が発生する可能性があります。
- サンプル コードのコピー アンド ペーストが機能しない
- 複数の印刷不可能な文字を貼り付けてフォームを悪用するクライアント。実際には意味がありません。
クライアントに印刷できない文字を入力するように要求する場合は、テキスト ファイルをチケットにアップロードするようクライアントに要求できます。
では、非印刷物を削除する際に考慮すべきことは何でしょうか?
このディスカッションに参加したすべての参加者に、事前に感謝したいと思います。
java - 文字列から controlchars 以外の印刷できない utf8 文字を削除します
テキスト、制御文字、数字、ウムラウト (ドイツ語)、およびその他の utf8 文字を含む文字列を取得しました。
「言語の一部」ではないすべての utf8 文字を取り除きたい。(完全ではないリスト) ":/\ßä,;\n \t" のような特殊文字はすべて保持する必要があります。
悲しいことに、stackoverflow はこれらの文字をすべて削除するため、画像を追加する必要があります ( link )。
何か案は?助けていただければ幸いです。
PS: 誰かがそれらの特殊文字を殺さない貼り付けサービスを知っていれば、私は喜んで文字列をアップロードします..私はそれを見つけることができませんでした..
[編集]: 正規表現 "\P{Cc}" はすべて保存したい文字だと思います。この正規表現に一致しないすべての文字が返されるように、この正規表現を反転できますか?
php - Print_r() から PHP error_log() が機能しない。(非印字文字)
PHP で巨大なオブジェクトを適切にデバッグするために、ヘルパー クラス Utility::error_log() に静的メソッドがあります。メソッドとそのヘルパー メソッド Utility::toArray() は次のとおりです。
ここで少し確認する必要があるかもしれませんが、要点は、 toArray は巨大なオブジェクト (多くの再帰) を桁違いに小さくし、すべてのプロパティを配列または文字列として返すことです。はるかに簡単に操作できます... アイデアprint_r($array,true)
は、配列を文字列にして、それをログに記録することです。
ただし、これは期待どおりには機能しません。結果は次のとおりです。
そしてprint_r($data)
、ブラウザを呼び出して印刷すると、次のようになります。
$data = var_export($data,true)
error_log() の長さの制限であると言う前に、問題なく結果を error_log() に正常に送信できることを述べておきます。
何が問題ですか?var_export($data,true)
、およびprint_r($data,false)
では機能するのに、では機能しないのはなぜprint_r($data,true)
ですか??
ruby - Rubyで印刷不可/非表示の文字を削除するには?
文字列の途中に印刷できない悪意のある文字が含まれていることがあります。これらの文字列はユーザー入力であるため、問題の原因を変えようとするのではなく、プログラムが正しく受信できるようにする必要があります。
たとえば、文字列の途中にゼロ幅の改行なしスペースを含めることができます。たとえば、ファイルを解析しているときに問題があったのは、ファイルの途中にある文字列でした。すべてが正しいように見えますが、ショーで検査すると次のようになります。.po
"he is a man of god"
irb
私は a が何であるかを知っていると信じておりBOM
、それをうまく処理しています。ただし、ファイルの途中にそのような文字がある場合があるため、BOM
.
私の現在のアプローチは、私が本当に悪臭を放つ方法で悪を見つけたすべてのキャラクターを削除することです:
私が得た最も近いものは、正規表現のオプションにつながったこの投稿に従うことでした。:print:
しかし、それは私にとっては良くありませんでした:
質問は次のとおりです:ルビの文字列からすべての印刷不可能な文字を削除するにはどうすればよいですか?
grep - GREP_OPTIONS='--color=always' は印刷されない文字を引き起こします
私のbashバージョン:
私の .bashrc には、次のものがあります。
問題を再現するには、ファイル test.txt を作成し、いくつかの行を記述します。
bash で grep を実行します。
結果を確認すると、次のような結果が得られます。
この問題について何か考えはありますか?ところで、fileformats=unix をセットアップしました。
php - 非印字文字を使用して PHP 関数を定義できるのはなぜですか?
私は常に、すべての php 関数は[a-zA-Z]
.
たとえば、これはうまくいきます:
...これはそうではありませんが:
ただし、 の結果として表示される文字は、rawurldecode('%E2%80%A9')
それを表示するドキュメントで UTF8 のコンテンツ タイプが宣言されている場合、関数の定義にも使用できます。
隠し文字を表示しないテキスト エディターでは、最終的に関数が定義されているように見え、それfunction () {
を呼び出して実行できます (これ以上のものはないように見えます)。();
ソースコードを貼り付けることができず、まだ正しく表示されていないため、スクリーンショットをいくつか示します。1 つ目はブラウザに表示されたもののスクリーンショットで、2 つ目はテキスト エディタ (TextWrangler) 内に表示された実際のソース コードのスクリーンショットで、[隠し文字の表示]がオンになっています。
ブラウザ:
ソースコード:
私の質問: これは意図的なものですか? 非印刷文字を使用して関数/変数を定義し、それでも問題なく動作させることができる必要がありますか? もしそうなら、それはどこかに文書化されていますか?
私はそれについての情報を見つけることができませんでしたが、私は(明らかに)すべてを知っているわけではありません.
ありがとう!
ruby - Rubyは印刷できない文字を数字に変換します
印刷できない文字を含む文字列があります。
私が現在行っているのは、次を使用してそれらをチルダに置き換えることです:
ただし、実際にはそれらを整数値に変換したいと思います。
これを試しましたが、常に出力されます0
考え?