MMinuteBramble
AIコーディングワークスペース

分フィールドの展開

最大128文字の分フィールドをゼロから59の重複しない昇順値へ展開してください。

● ● ●MinuteBramble●
ワークフロー · 分フィールドの展開 ×
import re

def minute_values(field):
    if type(field) is not str or not 1 <= len(field) <= 128:
        raise ValueError("minute.input")
    result = set()
    for item in field.split(","):
        match = re.fullmatch(r"(\*|[0-9]+(?:-[0-9]+)?)(?:/([0-9]+))?", item)
        if match is None:
            raise ValueError("minute.syntax")
        base, step_text = match.groups()
        step = int(step_text) if step_text else 1
        if not 1 <= step <= 59 or (step_text and base != "*" and "-" not in base):
            raise ValueError("minute.step")
        bounds = [int(x) for x in base.split("-")] if base != "*" else [0, 59]
        low, high = (bounds[0], bounds[-1])
        if not 0 <= low <= high <= 59:
            raise ValueError("minute.bounds")
        result.update(range(low, high+1, step))
    return sorted(result)
✳分フィールドの展開
✓ 変更内容適用前に確認 ↗
ワークスペースのイメージ
01

適用前に確認

実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。

02

モデル

OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。

03

プロジェクト

リスト、両端を含む範囲、範囲や星への刻みを試し、逆の境界、ゼロ刻み、未対応構文を拒否し、ジョブを実行しないでください。

ワークフロー

分フィールドの展開

ワークフロー ↗
ワークフロー
import re

def minute_values(field):
    if type(field) is not str or not 1 <= len(field) <= 128:
        raise ValueError("minute.input")
    result = set()
    for item in field.split(","):
        match = re.fullmatch(r"(\*|[0-9]+(?:-[0-9]+)?)(?:/([0-9]+))?", item)
        if match is None:
            raise ValueError("minute.syntax")
        base, step_text = match.groups()
        step = int(step_text) if step_text else 1
        if not 1 <= step <= 59 or (step_text and base != "*" and "-" not in base):
            raise ValueError("minute.step")
        bounds = [int(x) for x in base.split("-")] if base != "*" else [0, 59]
        low, high = (bounds[0], bounds[-1])
        if not 0 <= low <= high <= 59:
            raise ValueError("minute.bounds")
        result.update(range(low, high+1, step))
    return sorted(result)
AIコーディングワークスペース

設定構文を予測可能なアプリケーション動作にする

MinuteBrambleは、設定関連の作業にWindows向けAIコーディングワークスペースを提供します。パーサー、出力を読むコード、実際の設定例をいくつか対話に含めます。互換性の目標を定めるため、新しい構文を依頼する前に、現在アプリケーションが受け付けるものを調べるよう依頼してください。

minute_field.pyに関する課題では、間隔付きの分の範囲と拒否する入力のテストを追加できます。受け付けるフィールド構文と期待する値のリストを示し、呼び出し側がそのリストをどう使うか調べます。これはプロジェクトのパーサーの例です。フィールドの評価は、アプリケーションの作業予定を決める一部分にすぎません。

提案をレビューした後、自分の環境で受け付ける例と拒否する例を実行します。期待出力は独立に記載し、重複する指定、範囲境界、不正な間隔を確認してください。受け付ける設定を広げる変更なら、それに合わせる必要がある文書とエラーメッセージを調べます。より多くの文字列を受け付けるパーサーが、必ず運用しやすいとは限りません。

対応するOpenAI互換またはAnthropicのエンドポイントで提供されていれば、拒否抑制を解除したAIモデルを選べます。必要な認証情報を設定し、サービスの実際の制限を確認してください。ツール対応とコンテキスト容量はモデルとサーバーに依存します。どの接続でも、受け付ける文法と利用側の期待を明確に保ちます。

設定の文法を変更する前に

分フィールドだけで完全な予定を定義できますか?

いいえ。パーサーが受け付ける構文の下で1つの要素を提供するものです。他の予定規則は利用するアプリケーションに属します。利用側もレビューし、フィールドの展開成功を予定処理全体の正しさの証拠にしないでください。

重複する指定はどう動くべきですか?

重複値を除去すべきか、呼び出し側がどの順序を期待するか示します。小さな重複例と正確な期待出力を提示してください。繰り返し指定を繰り返し作業と解釈したり、安定した昇順に依存したりする後続コードを調べます。

空白や未知の形式は許容すべきですか?

文法を意図的に定義してください。寛容な整理がタイプミスを意図しない設定に変える場合があります。受け付ける形式と拒否する形式を一緒にレビューし、受け付けると約束していない入力に黙って意味を与えず、対応構文をエラーメッセージで説明できるか確認します。

新しい構文機能の依頼には何を含めますか?

新しい形式、期待する展開、既存の範囲や間隔との関係を含めます。値を利用するコードと更新する文書を特定してください。提案機能が既存の設定動作を意図せず変えないよう、互換性の例を用意します。

Windows版をダウンロード ↗

MinuteBramble · 更新日 2026-10-25