This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

A Python 3.3+ implementation of the Lua language’s pattern matching functions. Lua’s pattern matching is simpler than regular expressions and lacks several features that regexes have, such as | for alternation, but also contains some features difficult or impossible to duplicate in most regex flavors, such as the ability to easily match a balanced pair of parentheses (or any two other characters).

Installation

pip install luapatt

Documentation

For documentation on how pattern matching works, please read the Lua reference manual. This library contains the following differences from stock Lua:

  • %c, %g, %p, and their negated counterparts are not available; attempting to use them will raise the built-in NotImplementedError.
  • Other character classes that rely on the meaning of a character call Python’s str.is* family of methods, and so use the Unicode definition of that meaning.
  • String positions are zero-based instead of one-based, reflecting the fact that Python is generally zero-based (as opposed to Lua, which has one-based indexes). This affects position captures and the indexes returned as the first two results from find().
  • Function return values are combined into a tuple, as is standard with Python. However, singleton tuples are not returned; the single value is returned directly instead.
  • gsub() does not return the number of substitutions by default, instead returning only the new string. To get the count, pass the named argument count=True to the call (which will result in a 2-tuple of the new string and the count).
  • An extra function, set_escape_char(), is provided to change the escape character. It takes one argument: the new escape character, which must be a str object of length 1. The escape character cannot be set to any of the other special characters. While it is possible to set it to a letter or number, this is not recommended as it may interfere with other aspects of pattern matching, and doing so may be disallowed in the future.
    • NOTE: Because set_escape_char modifies global state, it is not thread-safe.
  • Unlike Lua, which has no notion of a Unicode string and assumes all characters are one byte in length, this library operates on full Unicode strings (i.e. str objects). If you pass bytes objects to this library, the behavior is undefined.

Licensing

As with Lua itself, this library is released under the MIT License.

Release History

Release History

0.9.0b5

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.9.0b4

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
luapatt-0.9.0b5-py3-none-any.whl (10.0 kB) Copy SHA256 Checksum SHA256 py3 Wheel Dec 28, 2015
luapatt-0.9.0b5.tar.gz (7.8 kB) Copy SHA256 Checksum SHA256 Source Dec 28, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting