> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alumio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Array or object: Does not contain wildcard match

> Checks that an array or object does not contain a matching value.

export const FormField = ({property, label, required = false, diType, uiPatterns, children}) => {
  const patterns = Array.isArray(uiPatterns) ? uiPatterns : uiPatterns ? [uiPatterns] : [];
  return <div style={{
    margin: '1.5rem 0'
  }}>
      <div style={{
    display: 'flex',
    alignItems: 'baseline',
    flexWrap: 'wrap',
    gap: '0.5rem',
    marginBottom: '0.25rem'
  }}>
        <strong>{label}</strong>
        <span style={{
    fontSize: '0.7rem',
    fontWeight: 600,
    textTransform: 'uppercase',
    letterSpacing: '0.04em',
    color: required ? '#6241f5' : '#6b7280'
  }}>
          {required ? 'Required' : 'Optional'}
        </span>
      </div>

      <div>{children}</div>

      {diType || patterns.length > 0 ? <p style={{
    fontSize: '0.85rem',
    color: '#6b7280',
    marginBottom: 0
  }}>
          {diType ? <>
              See the <a href={`/references/${diType}`}>{diType}</a> reference.{' '}
            </> : null}
          {patterns.length > 0 ? <>
              Accepts a <a href={`/documentation/placeholders-and-patterns/patterns#${patterns[0]}`}>pattern</a>.
            </> : null}
        </p> : null}
    </div>;
};

The opposite of "Array or object: Contains wildcard match". It checks the incoming value against a list of wildcard patterns and passes only when the value matches none of them. Use this to exclude values that follow a certain naming convention, for example to process every order reference except those beginning with `TEST-`, or to skip product codes ending in `-OLD`.

Patterns support wildcards:

* `*` matches any run of characters, including none.
* `?` matches exactly one character.
* `[rz]` matches a single character from the set, so `Ba[rz]` matches both `Bar` and `Baz`.

Matching is case sensitive and works on a single text value.

This documentation describes: [Schema](/schemas/condition/list-not-contains-match)

## Fields

<FormField property="value" label="Patterns" required>
  One or more wildcard patterns the incoming value must not match. Add a row for each pattern. The condition passes only when the value matches none of the patterns, and fails as soon as it matches any one of them. At least one pattern is required.
</FormField>

## Sample data

The condition was pointed at each order's `region` value and set to exclude references for the Netherlands and Germany.

| Field    | Value              |
| -------- | ------------------ |
| Patterns | `["NL-*", "DE-*"]` |

| Value        | Matches? |
| ------------ | -------- |
| `FR-paris`   | Yes      |
| `NL-utrecht` | No       |

```json Configuration theme={null}
{
  "prototype": "list-not-contains-match",
  "parameters": {
    "value": ["NL-*", "DE-*"]
  }
}
```
