---
title: "case-insensitive contains() med XPath"
type: "forum-thread"
url: "https://www.webforum.nu/amne/xml/153620-case-insensitive-contains-med-xpath"
topic: "XML"
topic_url: "https://www.webforum.nu/amne/xml"
author: "plup"
published: "2006-11-11T16:05:58.000Z"
updated: "2006-11-11T19:39:33.000Z"
replies: 2
views: 362
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/xml/153620-case-insensitive-contains-med-xpath"
---

# case-insensitive contains() med XPath

## #1 — plup, 2006-11-11T16:05Z

använder följande för att hämta ut info ur en xml när man söker ($searchquery).

```php
$params = $xpath->query("//item" . ( $searchquery ? "[contains(., '" . $searchquery . "')]" : '' ) . "[position()>(last()-" . $limitEnd . ") and position()<(last()-" . $limitStart . ")]");
```

det egentligen enda intressanta(?) för problemet är:

```php
contains(., '" . $searchquery . "')
```

sökningar har funkat utmärkt tills alldeles nyligen då jag kom på att **contains()** funktionen i XPath är case-sensitive.

jag vill att sökningarna ska vara case-**in**sensitive.

hur göra? kan nån hjälpa mig.

har sett lite nånstans att man kan translate()'a alfabetet versaler-gemener, men har inte fått det att funka + att det är ett riktigt fulhack. men det är klart att ett fungerande fulhack är bättre än ingen funktion alls.

Permalänk: https://www.webforum.nu/p/153620

## #2 — plup, 2006-11-11T18:34Z

```php
$params = $xpath->query("//item" . ( $searchquery ? "[contains(translate(.,'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz'), '" . strtolower ($searchquery) . "')]" : '' ) . "[position()>(last()-" . $limitEnd . ") and position()<(last()-" . $limitStart . ")]");
```

Funkar tillräckligt bra för att jag ska kunna glömma bort problemet nu, (för att förmodligen behöva ta itu med det på riktigt i framtiden, jaja senare problem).

det är utan tvekan den längsta kod-rad i min programmeringshistoria   :e

Permalänk: https://www.webforum.nu/p/1895007

## #3 — plup, 2006-11-11T19:39Z

Någon som kan förklara varför

```php
contains(lower-case('.'), '" . strtolower ($searchquery) . "')
```

inte fungerar?

Permalänk: https://www.webforum.nu/p/1895021

---

Tråden på webben: https://www.webforum.nu/amne/xml/153620-case-insensitive-contains-med-xpath
