<!--
{
  "availability" : [
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "IOBluetooth",
  "identifier" : "/documentation/IOBluetooth/IOBluetoothSDPServiceRecord/matchesSearch(_:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "IOBluetooth"
    ],
    "preciseIdentifier" : "c:objc(cs)IOBluetoothSDPServiceRecord(im)matchesSearchArray:"
  },
  "title" : "matchesSearch(_:)"
}
-->

# matchesSearch(_:)

Returns TRUE any of the UUID arrays in the search array match the target service.

```
func matchesSearch(_ searchArray: [Any]!) -> Bool
```

## Parameters

`searchArray`

An NSArray of NSArrays of IOBluetoothSDPUUID objects.

## Return Value

Returns `TRUE` if any of the UUID arrays match.

## Discussion

The given array should contain <doc://com.apple.documentation/documentation/Foundation/NSArray> objects. Each sub-<doc://com.apple.documentation/documentation/Foundation/NSArray> should contain [`IOBluetoothSDPUUID`](/documentation/IOBluetooth/IOBluetoothSDPUUID) objects. In turn, each sub-NSArray gets passed to -matchesUUIDArray: If any of those returns `TRUE`, then the search stops and `TRUE` is returned. Essentially the primary NSArray contains the OR operations and each sub-array contains the AND operations.

NOTE: This method is only available in macOS 10.2.4 (Bluetooth v1.1) or later.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)