happytails.ai

Filter Text Lines

Open Filter Text Lines on Happytails.ai. This view has the same page content and links, with explicit tool capabilities. Read the processing notes before using a tool.

Tool capabilities

{
  "id": "filter-lines",
  "category": "text-tools",
  "built": true,
  "requirements": "Include/exclude substring or regex matches; preserve original order.",
  "implementation": {
    "fields": [
      {
        "key": "find",
        "label": "Contains",
        "value": "",
        "type": "text"
      },
      {
        "key": "action",
        "label": "Action",
        "value": "Keep matching",
        "type": "select",
        "values": [
          "Keep matching",
          "Remove matching"
        ]
      }
    ],
    "experience": {
      "automatic": true,
      "single": false,
      "inputMaxLength": 1000000,
      "inputMode": "text",
      "label": "Your text",
      "placeholder": "Hello world!",
      "help": "Change the input or settings to update your result. Results update as you type. Up to 1,000,000 characters.",
      "helpParts": [
        "Change the input or settings to update your result.",
        "Results update as you type.",
        "Up to 1,000,000 characters."
      ],
      "action": null
    },
    "mode": "automatic",
    "interactive": false
  },
  "execution": "POST /api/v1/tools/filter-lines/run",
  "api": {
    "id": "filter-lines",
    "name": "Filter lines",
    "category": "text-tools",
    "description": "Keep or remove lines containing a phrase.",
    "notes": "",
    "human_path": "/en/text-tools/filter-lines/",
    "method": "POST",
    "endpoint": "/api/v1/tools/filter-lines/run",
    "schema_url": "/api/v1/tools/filter-lines",
    "input_schema": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "input": {
          "type": "string",
          "maxLength": 1000000,
          "default": "",
          "description": "Plain text input. File tools use files instead unless otherwise documented."
        },
        "options": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "find": {
              "type": "string",
              "description": "Contains",
              "default": ""
            },
            "action": {
              "type": "string",
              "description": "Action",
              "default": "Keep matching",
              "enum": [
                "Keep matching",
                "Remove matching"
              ]
            }
          }
        }
      }
    },
    "output_schema": {
      "type": "object",
      "required": [
        "tool",
        "result"
      ],
      "properties": {
        "tool": {
          "type": "string"
        },
        "result": {
          "type": "object",
          "required": [
            "text",
            "files"
          ],
          "properties": {
            "text": {
              "type": [
                "string",
                "null"
              ]
            },
            "data": {
              "description": "Parsed JSON when the textual result is JSON."
            },
            "name": {
              "type": "string"
            },
            "mime": {
              "type": "string"
            },
            "files": {
              "type": "array",
              "items": {
                "type": "object",
                "required": [
                  "name",
                  "mime",
                  "bytes",
                  "base64"
                ],
                "properties": {
                  "name": {
                    "type": "string"
                  },
                  "mime": {
                    "type": "string"
                  },
                  "bytes": {
                    "type": "integer"
                  },
                  "base64": {
                    "type": "string",
                    "contentEncoding": "base64"
                  }
                }
              }
            }
          }
        }
      }
    },
    "processing": "Server; same transformation code as browser tools",
    "limits": {
      "request_bytes": 8388608,
      "input_characters": 1000000,
      "files_bytes": 5242880,
      "max_files": 0,
      "timeout_seconds": 12
    }
  },
  "agent_processing": "Server; same transformation code as browser tools",
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}

Page guide

Keep or remove lines containing a phrase.

How to use Filter lines
  1. Enter your text in the input field.
  2. The result updates as you type. Adjust the available settings if needed.
  3. Review the result, then use Copy result or a download link when available.

What to expect

Keep or remove lines containing a phrase. Matching is literal and case-sensitive. Regular expressions are not supported.

Try a small example

red apple
green pear