問題タブ [smart-quotes]
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.
php - ファイルアップロードでの拡張ASCIIの処理
最近友達と一緒に完成させたウェブサイトには、画像やテキストファイルをアップロードできるギャラリーがあります。(開発を容易にするために)受け入れられる唯一のテキストファイルは.txtであり、通常は問題なく消えます(またはそうではありません)。
私が遭遇した問題は、他の開発者と同じです。Microsoftの拡張ASCIIです。
ファイルからテキストを出力する前に、いくつかの異なるレイヤーを調べて、ファイルをクリーンアップしようとします。
str_replaceは、Microsoftのひどいスマートクォート、em-dash、および省略記号を、出力用に通常の同等のASCIIに変換する一般的な方法です。
このコードは、アップロードされたファイルがANSI/us-asciiであるという条件の下で完全に機能します。
アップロードされたファイルがUTF-8の場合、このコードは(特別な理由なしに)機能しません。
ファイルがUTF-8の場合、Webブラウザーでファイル自体を表示することは正常に機能しますが、このコードを使用してWebインターフェイスを介してファイルを印刷することはできません。この場合、スマートクォートはある種のアクセントのある文字になります。
これは私が立ち往生しているところです。Webページの出力エンコーディングはUTF-8であり、WebブラウザはそれをUTF-8として認識し、ファイルはUTF-8にありますが、スマートクォートの置換は機能せず、Webブラウザはそれらを正しく表示しません。
これに関するありとあらゆる助けをいただければ幸いです。
asp-classic - ASP サーバー側のコードは、どのようにしてスマート クォートを破損する可能性がありますか?
私の会社では、多くの列を varchar から nvarchar に変換しました。
スマート クォート (ALT+0146 ') を画面に表示し、それを永続化のために SQL Server 2000 データベースに送り返すと、スマート クォートが壊れてしまいます。
私の質問:
ASP サーバー側コードは、どのようにしてスマート クォート ' を破損する可能性がありますか?
編集:私の質問はこれに似ているようです。ちなみに、Powerpoint のコンテンツでは、スマート クォートがミックスに導入されました。ただし、前に述べたように、私は ASP ページを扱っていますが、参照されている質問は PHP ページに関するものです。
編集: サーバー側のディレクティブCODEPAGE=65001
により、ページが正しくレンダリングされますが、Windows 2000 ボックスではコンテンツが「西ヨーロッパ」として投稿されます。誰かが理由を知っていますか?
ruby - RubyのWordから「スマート」な文字をクリーンアップする
以下を含むがこれらに限定されない、ユーザー入力のさまざまなWordの「スマート」文字をクリーンアップする必要があります。
これらをASCII(ほぼ)同等のものにマッピングするためのRuby関数またはライブラリはありますか、それとも本当にたくさんの手動gsubを実行する必要がありますか?
php - phpmailer からの電子メールで「スマート クォート」が正しく表示されない
私はLAMP Webサーバーを扱っています。ユーザーが mysql のテキスト フィールドに保存されているテキストを送信するために使用するフォームがあります。多くの場合、このテキストは Microsoft Office 製品からコピー アンド ペーストされているため、スマート クォートやエムダッシュが大量に含まれています。これらの文字は、データベースから取得して Web ページに表示すると正しく表示されますが、phpmailer クラスを使用して電子メールでテキストを送信するときに問題が発生します。次のようなものが得られます: – (emdash のはずです)。
重要なことの 1 つ: mysql でコンソールをプルアップし、emdash またはスマート クォートが含まれるフィールドを選択すると、コンソールに正しく表示されません。ページ (PDO を使用) でフィールドを選択して表示すると、ブラウザーで (この場合は emdash として) 正しく表示されます。
phpmailer で文字セットを選択する方法があるかどうか (おそらくどこかで簡単な設定でしょうか?)、またはこの問題を回避するより良い方法があるかどうかはわかりません。ただし、「スマートクォートとエムダッシュを検索して通常の同等のものに置き換える」ことは、私が探している答えではないことを明確にする必要があると思います(うまくいけば、それが唯一の解決策ではありません)。
私はこの情報を見つけました:
私のphpウェブページ:utf-8
mysqlクライアントエンコーディング:latin1
mysqlサーバーエンコーディング:latin1
phpmailer文字セット:iso-8859-1
javascript - 同じテキストの「スマート化」とリンク解析の問題
私はjQueryと非常に単純なスクリプトを使用して、引用符、アポストロフィ、および二重ダッシュをそれらの「スマート」な対応物に置き換えています。
私はこれをTwitterJSへのコールバックとして使用しています。TwitterJSはリンクを解析し、次のようなブロックを生成します。
問題は、私がこれを行うと、次のことです。
それはリンクを破壊します、そして私がこれをするならば:
それらを完全に破棄します。<a>
TwitterJSのリンク解析に干渉することなく、テキストのみを取得して(必要に応じてタグからも)「スマート」にしてから元に戻す、スマートで堅牢な方法はありますか?
php - Word の特殊文字を「通常の」デフォルトに置き換える
ユーザーは次のような Word からテキストをコピーして貼り付けます。
最終的には次のようになります。
私はそれが必要です:
このようなテキストを変換し、標準化された方法でこれを行う PHP ライブラリを探しています。これは、ここにリストしたものよりも多くの文字があるためです。たとえば、(c) 著作権記号など...
vb.net - 引用符をスマート引用符に変換する組み込みの VB.net 関数はありますか
回したい
「ピーナッツ」と「ココア」にはまっています
の中へ
「ピーナッツ」と「ココア」にはまっています</p>
どうすればいいですか?そのための組み込み関数はありますか?
php - IE7 の Twitter 共有ポップアップでスマート クォートが正しくエンコードされない
各投稿の横にツイッター共有リンクがあるWordpressテーマを構築しています
記事のタイトルにスマート クォートが含まれている場合、引用符は IE8 以下では「?」に置き換えられます。
投稿を保存または更新するアクションに文字列置換を使用する関数をフックして、スマート クォートを通常の引用符に変換してみました。これで問題は解決しませんでした。
この問題のトラブルシューティングに関するガイダンスが必要です: + IE8 以下でスマート クォートを処理できるように、何らかの文字セット宣言をコードに追加する必要がありますか? + または、php で Twitter リンクをエンコードして、スマート クォートを通常のクォートに置き換える方法はありますか? 前もって感謝します。
更新: 修正が見つかりました。wptexturize フィルターを削除すると問題が解決します: http://www.malcolmcoles.co.uk/blog/wordpress-smart-quotes/
javascript - 奇数の一致をタイポグラフィの開始引用符に置き換え、偶数一致をタイポグラフィの終了引用符に置き換えます
テキスト内の通常の引用符記号 ( " ) を印刷上の引用符 (« および ») に置き換えようとしています。
奇数の引用符の一致を « に、偶数の一致を » に置き換える方法はありますか?
だから:こんにちは「世界」!になる: Hello «world»!
また、これは「その場で」実行されることを意図しているため、テキストに偶数の引用符が含まれていなくても問題はありません。
ご協力いただきありがとうございます!
unicode - スマート クォートや、常に壊れるダッシュなどの文字のカテゴリまたは名前はありますか?
Word から Web サイトのフォームなどにテキストをコピーすると、すべての引用符 (')、二重引用符 (")、ダッシュ (-) が文字化けするという経験をお持ちの方も多いでしょう。引用符は「スマート クォート」または「" Typographer's Quotes" ですが、ダッシュの名前がわかりません。これらの文字を含むカテゴリはありますか? もっとありますか?
このカテゴリの優れた機能: 通常の qwerty キーボードでアクセスでき、ASCII と視覚的に簡単に区別できます。
この質問は同じ問題を扱っているようです: Word のスマート クォートと em ダッシュを文字列に変換するにはどうすればよいですか? また、おそらくそれらは「emダッシュ」と呼ばれていますか?