RunMat
  • Pricing
RunMat
GitHub
GitHub
DownloadSign InTry in Browser
DesktopRuntimeServer
RunMat

Run math blazing fast

GitHubX (Twitter)LinkedIn

Company

  • About
  • Pricing
  • Contact

Explore

  • RunMat for academia
  • RunMat vs MATLAB Online
  • Benchmarks

Get product updates and release notes from the RunMat team.

© 2026 Dystr · Made withfor the scientific community.

RunMat™ is a registered trademark of Dystr, Inc. MATLAB® is a registered trademark of The MathWorks, Inc. RunMat is not affiliated with, endorsed by, or sponsored by The MathWorks, Inc.

LicensePrivacy
tail\";\nstr = extractHTMLText(code, \"ExtractionMethod\", \"all-text\")"},{"@type":"HowToStep","name":"Extract From htmlTree","url":"https://runmat.com/docs/reference/builtins/extracthtmltext#extract-from-htmltree","text":"tree = htmlTree(\"

Title

Body & tail

\");\nstr = extractHTMLText(tree)"}]},{"@type":"FAQPage","@id":"https://runmat.com/docs/reference/builtins/extracthtmltext#faq","mainEntity":[{"@type":"Question","name":"Are `tree` and `article` exact MATLAB article extraction modes?","acceptedAnswer":{"@type":"Answer","text":"

No. Both modes currently use RunMat's paragraph/block extraction heuristic. Exact article scoring remains part of the broader Text Analytics compatibility work.

"}},{"@type":"Question","name":"Does `extractHTMLText` support arrays?","acceptedAnswer":{"@type":"Answer","text":"

Yes. Documented string arrays, cell arrays of character vectors, and htmlTree arrays produce string arrays with the same shape. Row-wise character matrices and broader or mixed cells require RunMat extension mode.

"}},{"@type":"Question","name":"Does `extractHTMLText` execute on the GPU?","acceptedAnswer":{"@type":"Answer","text":"

No. HTML extraction is host text processing and has no runmat-accelerate provider path.

"}}]}]}
/
See all docs
Builtin Reference
    • addDependencyDetails
    • addEntityDetails
    • addLemmaDetails
    • addPartOfSpeechDetails
    • addSentenceDetails
    • addTypeDetails
    • bagOfNgrams
    • bagOfWords
    • cosineSimilarity
    • doc2sequence
    • encode
    • extractFileText
    • extractHTMLText
    • fastTextWordEmbedding
    • findElement
    • getAttribute
    • htmlTree
    • ind2word
    • isVocabularyWord
    • normalizeWords
    • readWordEmbedding
    • removeLongWords
    • removeShortWords
    • removeStopWords
    • removeWords
    • stopWords
    • tokenDetails
    • tokenizedDocument
    • trainWordEmbedding
    • vaderSentimentScores
    • vec2word
    • word2ind
    • word2vec
    • wordEncoding
    • writeWordEmbedding

extractHTMLText — Extract visible text from HTML code or htmlTree objects.

extractHTMLText extracts visible text from HTML code or from an htmlTree object. It supports the documented ExtractionMethod option values "tree", "article", and "all-text".

Syntax

str = extractHTMLText(code)
str = extractHTMLText(___, 'ExtractionMethod', method)

Inputs

NameTypeRequiredDefaultDescription
codeAnyYes—HTML code or htmlTree object.
NameStringScalarYesExtractionMethodExtraction method option name.
methodStringScalarYestreeExtraction method: tree, article, or all-text.

Returns

NameTypeDescription
strAnyExtracted text.

Errors

IdentifierWhenMessage
RunMat:html:InvalidInputInputs are not a supported htmlTree or extractHTMLText form.HTML Text Analytics helper received invalid input

How extractHTMLText works

  • Documented extractHTMLText(code) input is a string array, character vector, or cell array of character vectors. Row-wise character matrices and cells containing string scalars are RunMat extensions.
  • extractHTMLText(tree) accepts RunMat htmlTree objects and homogeneous arrays of those objects.
  • extractHTMLText(___, 'ExtractionMethod', method) accepts tree, article, or all-text.
  • String arrays, cell arrays, htmlTree arrays, and extension-mode character matrices return string arrays with the input shape.
  • Script, style, noscript, template, and head content is excluded from extracted text.
  • Common HTML entities and numeric character references are decoded.
  • tree and article currently use the same paragraph/block extraction heuristic. RunMat does not yet implement MathWorks' exact article scoring algorithm.
  • all-text extracts normalized body text outside skipped elements. Whitespace is normalized for MATLAB-friendly string output.
  • The builtin has no integer role: all eight integer classes, logical and complex values, and resident numeric handles reject without numeric-to-text conversion or provider access.

GPU memory and residency

extractHTMLText parses host-resident text and has no provider kernel.

Examples

Extract Text From HTML

code = "<html><body><h1>THE SONNETS</h1><p>by William Shakespeare</p></body></html>";
str = extractHTMLText(code)

Expected output:

str = "THE SONNETS\n\nby William Shakespeare"

Use all-text Extraction

code = "<body><style>.x{}</style><p>visible</p><script>hidden()</script><span>tail</span></body>";
str = extractHTMLText(code, "ExtractionMethod", "all-text")

Expected output:

str = "visible tail"

Extract From htmlTree

tree = htmlTree("<article><h2>Title</h2><p>Body &amp; tail</p></article>");
str = extractHTMLText(tree)

Expected output:

str = "Title\n\nBody & tail"

Using extractHTMLText with coding agents

Open a RunMat example with live inputs, then ask the agent to explain how extractHTMLText changes the result.

Run a small extractHTMLText example, explain the result, then change one input and compare the output.

FAQ

Are tree and article exact MATLAB article extraction modes?⌄

No. Both modes currently use RunMat's paragraph/block extraction heuristic. Exact article scoring remains part of the broader Text Analytics compatibility work.

Does extractHTMLText support arrays?⌄

Yes. Documented string arrays, cell arrays of character vectors, and htmlTree arrays produce string arrays with the same shape. Row-wise character matrices and broader or mixed cells require RunMat extension mode.

Does extractHTMLText execute on the GPU?⌄

No. HTML extraction is host text processing and has no runmat-accelerate provider path.

Related Strings functions

Text Analytics

addDependencyDetails · addEntityDetails · addLemmaDetails · addPartOfSpeechDetails · addSentenceDetails · addTypeDetails · bagOfNgrams · bagOfWords · cosineSimilarity · doc2sequence · encode · extractFileText · fastTextWordEmbedding · findElement · getAttribute · htmlTree · ind2word · isVocabularyWord · normalizeWords · readWordEmbedding · removeLongWords · removeShortWords · removeStopWords · removeWords · stopWords · tokenDetails · tokenizedDocument · trainWordEmbedding · vaderSentimentScores · vec2word · word2ind · word2vec · wordEncoding · writeWordEmbedding

Transform

append · deblank · erase · eraseBetween · erasePunctuation · eraseURLs · extractAfter · extractBefore · extractBetween · insertAfter · insertBefore · join · lower · pad · replace · replaceBetween · reverse · split · splitlines · strcat · strip · strjoin · strjust · strrep · strsplit · strtrim · upper

Core

blanks · char · compose · convertCharsToStrings · convertContainedStringsToChars · convertStringsToChars · genvarname · int2str · isletter · isspace · isStringScalar · isstrprop · mat2str · native2unicode · newline · num2str · sprintf · sscanf · str2double · str2num · strcmp · strcmpi · string · string.empty · strings · strlength · strncmp · strncmpi · strtok · unicode2native

Search

contains · endsWith · matches · startsWith · strfind

Pattern

digitsPattern · lettersPattern · pattern · regexpPattern · textBoundary · wildcardPattern

Regex

regexp · regexpi · regexprep

Open-source implementation

Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how extractHTMLText is executed, line by line, in Rust.

  • View the source for extractHTMLText in Rust on GitHub
  • Learn how the RunMat runtime works
  • Found a bug? Open an issue with a minimal reproduction.

About RunMat

RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.

  • RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
  • Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.

Getting started · Benchmarks · Pricing

Download RunMat

Download RunMat for full performance, or use RunMat in your browser for zero setup.

Download RunMatOpen Sandbox
On this page
  • Syntax
  • Inputs
  • Returns
  • Errors
  • How extractHTMLText works
  • GPU memory and residency
  • Examples
  • Extract Text From HTML
  • Use all-text Extraction
  • Extract From htmlTree
  • Using extractHTMLText with coding agents
  • FAQ
  • Related Strings functions
  • Text Analytics
  • Transform
  • Core
  • Search
  • Pattern
  • Regex
  • Open-source implementation
  • About RunMat