Class: QgsStringUtils

class qgis.core.QgsStringUtils

Bases: sip.wrapper

Utility functions for working with strings.

New in version 2.11: Enums

Methods

ampersandEncode

Makes a raw string safe for inclusion as a HTML/XML string literal.

capitalize

Converts a string by applying capitalization rules to the string.

hammingDistance

Returns the Hamming distance between two strings.

insertLinks

Returns a string with any URL (e.g., http(s)/ftp) and mailto: text converted to valid HTML <a …> links.

levenshteinDistance

Returns the Levenshtein edit distance between two strings.

longestCommonSubstring

Returns the longest common substring between two strings.

soundex

Returns the Soundex representation of a string.

wordWrap

Automatically wraps a string by inserting new line characters at appropriate locations in the string.

Signals

Attributes

AllLowercase

AllUppercase

ForceFirstLetterToCapital

MixedCase

TitleCase

UpperCamelCase

AllLowercase = 2
AllUppercase = 1
class Capitalization

Bases: int

ForceFirstLetterToCapital = 4
MixedCase = 0
TitleCase = 1004
UpperCamelCase = 1005
ampersandEncode(string: str) → str

Makes a raw string safe for inclusion as a HTML/XML string literal.

This includes replacing ‘<’ with ‘&lt;’, ‘>’ with ‘&gt;’, ‘&’ with ‘&amp’, and any extended unicode characters with the XML style &#233; encoded versions of these characters.

New in version 3.2.

capitalize(string: str, capitalization: QgsStringUtils.Capitalization) → str

Converts a string by applying capitalization rules to the string.

Parameters
  • string – input string

  • capitalization – capitalization type to apply

Returns

capitalized string

New in version 3.0.

hammingDistance(string1: str, string2: str, caseSensitive: bool = False) → int

Returns the Hamming distance between two strings. This equates to the number of characters at corresponding positions within the input strings where the characters are different. The input strings must be the same length.

Parameters
  • string1 – first string

  • string2 – second string

  • caseSensitive – set to true for case sensitive comparison

Returns

Hamming distance between strings, or -1 if strings are different lengths.

Returns a string with any URL (e.g., http(s)/ftp) and mailto: text converted to valid HTML <a …> links.

Parameters
  • string – string to insert links into

  • foundLinks – if specified, will be set to true if any links were inserted into the string

Returns

string with inserted links

New in version 3.0.

levenshteinDistance(string1: str, string2: str, caseSensitive: bool = False) → int

Returns the Levenshtein edit distance between two strings. This equates to the minimum number of character edits (insertions, deletions or substitutions) required to change one string to another.

Parameters
  • string1 – first string

  • string2 – second string

  • caseSensitive – set to true for case sensitive comparison

Returns

edit distance. Lower distances indicate more similar strings.

longestCommonSubstring(string1: str, string2: str, caseSensitive: bool = False) → str

Returns the longest common substring between two strings. This substring is the longest string that is a substring of the two input strings. For example, the longest common substring of “ABABC” and “BABCA” is “ABC”.

Parameters
  • string1 – first string

  • string2 – second string

  • caseSensitive – set to true for case sensitive comparison

Returns

longest common substring

soundex(string: str) → str

Returns the Soundex representation of a string. Soundex is a phonetic matching algorithm, so strings with similar sounds should be represented by the same Soundex code.

Parameters

string – input string

Returns

4 letter Soundex code

wordWrap(string: str, length: int, useMaxLineLength: bool = True, customDelimiter: str = '') → str

Automatically wraps a string by inserting new line characters at appropriate locations in the string.

The length argument specifies either the minimum or maximum length of lines desired, depending on whether useMaxLineLength is true. If useMaxLineLength is true, then the string will be wrapped so that each line ideally will not exceed length of characters. If useMaxLineLength is false, then the string will be wrapped so that each line will ideally exceed length of characters.

A custom delimiter can be specified to use instead of space characters.

New in version 3.4.