タグ付けされた質問 「regular-expression」

正規表現の使用を含むコードの課題。

7
ヤコビ行列を作成する
未知数のベクトルを取り、いくつかの一般的な微分可能関数を適用します。ヤコビアンは、次いで行列によって与えられるように。 たとえば、と仮定m=3しn=2ます。次に(0ベースのインデックスを使用) のヤコビアンfは この課題の目標は、このヤコビ行列を出力することです。 入力 プログラム/関数は、2つの正の整数mとを入力として受け取る必要nがfありuます。これらはそれぞれとのコンポーネントの数を表します。入力は、任意のソース(stdio、関数パラメーターなど)から取得できます。あなたはこれらが受け取られる順序を指示することができ、これはあなたの答えへのどんな入力でも一貫していなければなりません(あなたの答えで指定してください)。 出力 ヤコビ行列を表すもの。この表現は、ヤコビ行列のすべての要素を明示的に記述する必要がありますが、各項の正確な形式は、何が区別され、何が明確であり、すべてのエントリが論理的な順序で出力される限り、実装で定義されます。マトリックスを表すための受け入れ可能なフォームの例: 外部リストの各エントリがヤコビアンの行に対応し、内部リストの各エントリがヤコビアンの列に対応するリストのリスト。 各行がヤコビアンの行であり、行の各区切り文字で区切られたエントリがヤコビアンの列に対応する文字列またはテキスト出力。 マトリックスのグラフィック/ビジュアル表現。例:MatrixFormコマンドを使用したときにMathematicaによって表示されるもの 他のいくつかの密行列オブジェクト。すべてのエントリは既にメモリに格納されており、クエリできます(つまり、ジェネレータオブジェクトを使用できません)。例としては、Mathematicaが内部的にMatrixオブジェクトをどのように表すかが挙げられます エントリ形式の例: 形式の文字列。d f_i/d u_jここでi、およびjは整数です。例:d f_1/d u_2。dとf_1またx_2はの間のこれらのスペースはオプションであることに注意してください。また、アンダースコアもオプションです。 d f_i(u_1,...,u_n)/d u_jまたはの形式の文字列d f_i(u)/d u_j。つまり、関数コンポーネントの入力パラメーターf_iはオプションであり、明示的に指定するか、コンパクトな形式で残すことができます。 フォーマットされたグラフィック出力。例:式を評価したときにMathematicaが出力するものD[f_1[u_,u_2,...,u_n],u_1] 開始インデックスとその目的uを選択できますf(回答で指定してください)。出力は、必要なシンク(stdio、戻り値、出力パラメーターなど)への出力です。 テストケース 次のテストケースでは、この規則を使用していm,nます。インデックスは0ベースで表示されます。 1,1 [[d f0/d u0]] 2,1 [[d f0/d u0], [d f1/d u0]] 2 2 [[d f0/d u0, d f0/d u1], [d f1/d u0, d …

3
RegEx-golf:文字列のすべてのコンテンツに一致
あなたの仕事は、文字列内のすべてに一致するRegExを記述することです。 文字列は、エスケープされていない2つので囲まれている(ただし含まれていない)すべてのものとして定義されます"。 Aが"でエスケープすることができ\、また再びエスケープすることができ、。 テストケース string: ab\c"defg\\\"hi"jkl"mn\\\\"opqrst"" matches: ^^^^^^^^^^ ^^^^^^ ^ (the empty string) 得点 最短のソリューションが優先されます。 スペック 使用するフレーバーを指定してください。 入力はバランスが取れてい"ます。 \string-beginning-delimiterの直前には何もありません。たとえば、処理する必要はありませんabc\"def"

2
複利の逆正規表現
Koronkorkoはフィンランド語で複利。私たちは文字列に複利を使いたくないので、それを除外するためにできるだけ短い正規表現を見つけましょう。 大文字のアルファベットAZのみで構成される文字列を指定し、文字列に部分文字列が含まれていない場合、その文字列に一致する可能な限り短い正規表現を決定しKORONKORKOます。KORONKORKO部分文字列として含まれる文字列は、正規表現と一致しないようにする必要があります。 文字だけがA- 、Z、[、]、-、^、、?、*、+、|、(および)式で使用する必要があります。 これは118文字で表現できると思います。短くできますか? 注:この課題は、Ohjelmointiputka(フィンランド語)によるものです。

2
Python:私がPHPだったらよかった[終了]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、 Code Golf Stack Exchangeのトピックとなるようにします。 3年前休業。 彼が何であったかについて決して満足しなかったストーンカッターについての古い話があります。彼は太陽になりたいと願い、そうなった。雲に遮られて、彼は雲になりたかった-そして雲になった。風が吹いたとき、彼は自分が風になることを望んだ。山に止められ、山になりたかったので山になった。しかし、間もなく彼は石ころにハッキングされ、石ころになりたかった。 同様に、あなたの仕事は、それが存在する言語に決して満足しないプログラムを書くことです。あなたのプログラムはそれを別の言語に変えるために正規表現の置換のセットを出力する必要があります。等々。 ルール 選択した言語でプログラムを作成します。 プログラムは、一連の少なくとも2つのセグメントを出力する必要があります。セグメントは、セミコロンで区切られた一連のテキストです。ただし、セミコロンが正規表現内に含まれている場合、セミコロンをそこに分割すると無効な構文が生じるため、セグメントは分離されません。例を参照してください。 最初のセグメントは検索する正規表現パターンで、2番目のセグメントは置換パターンです。3番目は別の「検索」パターン、4番目は「置換」パターンなどです。 プログラムに正規表現パターンを適用します。最初のセグメントのパターンを2番目のセグメントのパターンに置き換えます。3番目のパターンを4番目のパターンに置き換えます。 結果は、それ自体が規則2から4に従う別の言語のプログラムになるはずです。 使用される言語は、無限の繰り返しサイクルを形成する必要があります。 たとえば、Python-> PHP-> C ++-> Python-> PHP-> C ++-> Python-> ... あなたのスコアはサイクルの期間です。タイは、最短の初期コード長で分割されます。 上記の例では、スコアは3です。 サイクルの各反復で、言語を複数回使用することはできません。 ルール5および7では、互換性のある言語(CおよびC ++)と同じ言語の異なるバージョン(Python 2とPython 3)は同じと見なされます。 プログラム自体を繰り返す必要はありません。 上記の例では、1番目と4番目のプログラムが異なる場合があります。 正規表現の任意のバージョンを使用できますが、すべてのプログラムで同じバージョンを使用する必要があります。 各プログラムの合計出力は100文字を超えることはできません。 各出力には、実際にプログラムを変更するための指示が含まれている必要があります。つまり、サイクル内の2つの連続したプログラムが同じであってはなりません。 例 Python-> Ruby-> Python-> ... print "uts;Z;rint;uts;Z(?=;Z);rint" 出力: uts;Z;rint;uts;Z(?=;Z);rint セグメントは次のとおりです。 FIND …

4
「m」と「n」の間の自然数に一致する正規表現を生成します
正規表現のタイプはPCREです。 それは間のすべての自然数と一致していることを出力有効PCREは、このようなことをするプログラムを作成mし、nそして何か他のものと一致していません。先行ゼロは許可されていません。 たとえば、let mとnbe 123とすると4321、プログラムはを出力します 1(2[3-9]|[3-9]\d)|[2-9]\d\d|[123]\d\d\d|4([012]\d\d|3([01]\d|2[01]))。 これは正確な文字列と一致するため^、$アンカーは暗黙的です。 2つのバランスをとる必要があります。 正規表現は適切なサイズである必要があります。 コードは短くする必要があります。 最適化しましょう code length in characters + 2 *regular expression length for input 123456 and 7654321 サイドノート:最短のPCRE正規表現がO(log n log log n)か何かであることを証明できるかどうか興味深いです。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.